Throw error on non-existent routes

Previously, when .route() was called with an invalid route, it simply returned nothing, which was eventually interpreted as the root of the domain, causing the homepage to be loaded. Since calling a non-existent route is going to be a bug, it should throw an exception.