moved all viewModel shutdown logic inside __shutdown() method, afterBinding() call now registers its own wasCalled flag, $router.destroy() renamed to .shutdown(), added dom disposal logic for normally applyBindings()'d viewModels (this takes care of <viewModel> lifecycle events as well)