.
Mechanically speaking, this class is very well designed and seems complete.
One point of concern that comes to mind is that tracking recharge times might prove to be a lot of bookkeeping.