I've refactored the use of the serial port, to store the
current serial port in a global variable in a module.
This is set to the most recent port to receive data,
and so we should always be replying to the port
that was used to initiate a command.
If SECONDARY_SERIAL_PORT is not defined, this
should result in no change - if it is, we should be
able to communicate on either port.
- Added endstop and light_sensor module
- Improved configuration by splitting wiring configs to boards.h
- Added a unit test for argument parsing
- Fixed many smaller bugs