What about skipping amplification altogether and look for a high precision, high resolution ADC chip?
I finally got around to finish the aquisition part of this project and ended up using an external 24-bit sigma-delta ADC (ADS1211). After calibration, accuracy is around +/- 25mA for the range +/-100A and mind that is from a +/-50mV input signal.
Link to the ADS1210/ADS1211 datasheet is here:
I built a separate PCB for the ADC together with a bootloaded Atmega328. Interface is SPI to ADC (AtMega as master) and the aquisition board also expose I2C and RS-485. I2C is used to control a custom three-phase alternator charge regulator (constant current, boost, float).
RS-485 is used to broadcast instant voltage, instant current, net accumulated charge/discharge (amp hours) from the aquisition board and on input supports adjusting regulator set points.
All in all I'm pretty impressed with the sigma-delta ADC (I bid for it on e-bay and only paid 3$ + S/H for it). It is a good alternative to the challenge of building a precision analog amplifier (at least with my limited analog design experience). This allows for high accuracy data aquisition and large dynamic range at a very low cost.