not my design but surely something I like to link as a very nice project.
BatMan II is a universal battery manager to charge and discharge all types of batteries. Currently it manages Pb-Acid, NiCd, NiMh, LiIon, LiPo and LiNP (Lithium Nano-Phosphate batteries.
Battman II also is not an embedded design but a charger that is directly controlled by a PC through the parallel port.
For the full BattMan II project, have a look at Stefan Vorkoetter's website.
But BattMan is a perfect 'victim' to implement in one of my LPC17xx targets, being either my custom lpc1754 board or a standard LPCXpresso 1769 board. So I'm keeping a link to Stefan's website to remind me to make this some day.