Breaking down the router, writing more tests