I've found just using transistors and resistors a good way of making constant current sources. In the diagram I've attached, the current is determined by the R2 (I=0.7/R2), and R1 just needs to be large enough so as not to draw lots of current, but small enough to ensure the current gain through Q1 is sufficient. It is a very simple and stable circuit which doesn't rely on a specific voltage source. Q3 and Q4 do the current mirroring - these need to be the same type of transistor and preferably from the same batch - using different types here can lead to a wildly different current in the mirrored branch. I haved used both the current limiting and mirroring bits in a number of circuits without any problems. Now you just need to workout when the batteries are charged.