Add convenient methods to manipulate routes after they are collected at startup

This is my naive attempt at implementing the API you proposed but I'm new to the codebase so this may not be ideal (it's probably not desirable to make all the Route sequences mutable but I'm not sure how else to do it). Let me know if this is along the lines of what you were thinking or if you have better implementation suggestions.

resolves #261