Add get/set functions to urlState

This adds the ability to stick arbitrary pieces of state information in
the URL.
Consider moving this up to the upper `var` block because:

1. It is part of a data declaration, not a module level var
2. It's nice to have require statements near each other