the shell now watches for uri change events, and manages application state accordingly