Implement push and pull for criteria. Rework code to better fit MVC
pattern.