The system has changed quite a lot with the second attempt; is is only designed for five batteries in series this time because regulation gets difficult with voltages that are high enough to charge ten batteries in series. Instead of the switching regulator and constant current sink that was used with the last version there are two LM317s, one wired as a constant voltage source, and one wired as a constant current source. These are then switched with P-channel MOSFETs. The battery voltage reading and balancing are the same as the last circuit. The controller is somewhat different; instead of using an Arduino with wires going over to the main board a ATMega328p is used on the board. This is programmed in C without the use of Arduino.
For me, big heatsinks and battery management does not go so well together. I smell some wasted power :-)
There are so many SMPS regulators available today, many of them are really easy to use, that I would not use a linear regulator here.