Improve error when navigate() is called before route() - fixes #5

Includes test for this feature.