add tests and tweak
add a test
add tests for Router