Improved the interfaces & instantiation procedcedures for controllers