improved callback system for MVC framework, model needs to be decoupled from the view better