added functionality to create controller object with an object and state bound via the commandController class with tests