A neater alternative - no separate battery pack - is something like this from Lezyne.
Charges from USB, which can be handy if you commute and have a computer on your desk.
Clip on mount is easy to remove for security, or to put on another bike, or to use as a hand torch.
And most importantly...