here is a constant current controlled by an atmega, I should start there, as that looks like it makes it a software problem (as in bugs=smoke) to add some smart logic (i.e. peak detection, pulse trickle), and even has a separate voltage for the batteries. And I have a small pile of atmegas.
http://www.opend.co.za/hardware/nimh1/nimh1.htm
I'm gonna need a new thread though...