Added the controller implementation

Renamed the file, added the controller implementation, began working on
the state machine for the keyboard, hoping to finish that up later today
during lab and hopefully test it as well.