Added some framework for model watchers. Had the epiphany that controllers have no real reason to be an object. Further consideration required