Improve reliability of reading analog voltages

When reading in an analog voltage, read in the value, then apply delay,
then read again.
This allows for the capacitance of charging the RC in the arduino.
Improve backward wall follow code

Improve backward wall follow code.
Only follow in one direction to help reduce stalls.
Clean up code

Clean up code.
Group tests that result in the same outcome.
Bug Fix

Missing #endif
Update left wall follow algorithm

Update left wall follow algorithm.
Add right wall follow algorithm

Updated backwardWallFollow to be able to follow the right wall based on
a boolean flag.
Fixed bug in IR Sensor Class

Filter was turned off.
Added corner stall detect

When stuck against a wall for more than 5 seconds, enter backoff state.
Updated code to use defines over constants

Removed constants from wall follow code and replaced with #define for
ease of editing & reading.
Improve wall follow algorithm

When backing off, continue until there is nothing in front or to side.
Improve wall follow algorithm

When stalled in corner, try backing off, then try forwards again.
Switch names of states as they were reversed

Switch names of states as they were reversed - LEFT & RIGHT were
reversed.
Added default cases to switches to handle errors.