Cygolite makes, or at least use to make, not sure about their newer stuff, good lights and great batteries. I have a 12 year old Mitycross 400, and that battery still holds a charge for just as long as it did when it was new, highly unusual if you ask me, but their batteries were like that.
Problem with Cygolite lights with self-contained batteries is that they no longer make a light with a user replaceable battery like they used to. So, I bought a NiteRider 1100 Lumina Pro light because when the battery fails, I can send it back and for $30 they will replace the battery, check all the circuits, reseal it and send it back.