cleanup

* no tuple-wrapping macros
* counted_tokens is a better name for what's hapening
* refine types