Add the elements needed to use my own implementation of mvvm pattern