Added Controller abstract class.
Restructured Controller as a Filter, and added auxiliary methods.
Alot of code.