Embedded counters

Bandit internal state held in a counter struct. This allows sharing of reset
and update methods.