Added the Controller interface

- This interface is necessary so we can begin implementing controllers,
including the camera controller
- Added additional packages and READMEs