Reuse Tokens, instead of creating all the time

Saves an awful lot of GC. These are just data transfer objects, so not
worth creating every time.