Updated to add features to the viewModel like .parent() and .applyAll().