Implements most of FSM

- Added the State class
- There still needs to be changes done to the getAction function inside
the state class. There needs to be a determining operation to choose the
correction action to trigger.
- Added Transition class
- Transition class should be finished
- Made a note in the State class's getAction function
- Created the StateMachine class
- The update function in the StateMachine class should be now fully
implemented

@LochNeffMonster or @jamcohen please review

Closes #11 
Closes #10 
Addresses #9