style cleanups
no reason routes themselves should be public
avoid some unnecessary conversions
insertRoute is not particularly useful
getting rid of insert means we can use ListBuffer
move shared test helpers to a separate file
another test
enable warnings
try out a different testing interface
filter out empty path components when matching too