Regarding calibration : What level of accuracy, what error is acceptable, for the measured O2 level over all ranges of O2 levels ? It looks to me like what "calibration" does now is correct any offset between the expected reading at normal 1 ATM pressure and O2 level and the actual reading. This then relies that, over the rest of the range of possible O2 readings, that the gain and linearity of the sensor and other electronics are perfect .. or at least good enough (hence my question). I'll guess there's nothing (practically speaking) you can do to calibrate the sensor but it's not too hard to come up with a calibration device/scheme that allows calibration of the rest of the electronics over the whole range of expected O2 sensor outputs. Given this would all (now) be "computerized" it would be a simple as pushing a button to enter a cal routine and using a cal tool (in place of the sensors) to take "readings" at different voltages. But only if the accuracy requires it be done.
I'd post a simple block diagram of what I think the pieces are but ATM it would seem the SF forum is AFU regarding the display of attachments so that will have to wait.
I do have to ask how much trouble are you willing to go to for this project ? I think you could end up with something better and perhaps smaller than the one I linked to above but it'll take some work and involve making your own PCB and, as I think you already expect, doing your own custom coding. And probably cost more than buying Mr Munro's Gen6.
BTW : An Arduino is a Atmel microcontroller (MCU) on a standardized PCB with all the other components needed to make the MCU run and then has all it's I/O pins brought out for the user to access. It also has a USB to serial converter chip on the PCB to allow communication to/from most PCs (which all have USB ports these days). It also has a bootloader program already loaded into the MCU so when powered up the Arduino/MCU looks to download additional programs from it's serial port ... which might be connected to a PCs USB port. If it finds a new program, it D/Ls it and runs it ... otherwise the bootloader reverts to whatever program was last D/L'ed. This allows the user to write and compile programs and D/L them to the Arduino w/o having to have a specialized programming tool. (Not that such tools are hard to use or expensive, <$50). This is all intended to make the Arduino an easy to use board to develop hardware and software on. After getting everything to run you may elect to keep the Arduino as the final tool or come up with your own PCB with an MCU and a cutdown set of support circuitry and I/O ports ... for less $$ and in a smaller size/footprint when compared to an Arduino. Where size seems to be a design driver for you, you may want to look at one of the "pro" mini Arduino boards ... which lack some of the support circuitry so as to minimize cost and size. For example you buy a separate USB to serial converter to "talk" to the Arduino Pro via the PCs USB port.
http://www.sparkfun.com/products/9220
Using the above would still mean you'd have another board with the 3 amp circuits as I don't think an Arduino's ADC will work well enough with ~100 mV levels. And whatever else is needed to run whatever display looks good.
PS - I agree a separate battery compartment that allows recharging or replacement of the battery w/o having to open up the watertight display enclosure is a good idea. It''s the one thing I find wrong with Mr Munro's designs.
EDIT : I also have another reason for trying to pin you down on the accuracy needed. I believe most of the MCUs you might opt to use can use another reference voltage for their A/D converter. I'm not sure if they can use something as low as 200 mV (like the Datel DPMs Mr Munro used) but ~1 V is likely. If you don't need much accuracy then using a 1V reference and a 10 bit A/D means there's about 100 bits covering the 0-100 mV range you're primarily interested in. Given a couple of bits of inherent inaccuracy in these A/D's, you're left with something like +/-2 % accuracy and no need for any op-amp circuitry.