Small re-organizing of router.go

Create functions to instantiate routes
Add some basic metrics
Minimize buffer alloc/GC effects(needs work)
Wipe the buffer before each read to prevent problems