Initial untested counter.go

Initial untested version of the counter code. Depends on new Do method