Added documentation
Added some variables to simplify code
Changed getControllerInstance to getInstance
Changed executeCommand() access modifier for testing

Changed from private to package private.
Merge branch 'controller/sharon'