Changes for cross-platform functionality. Also, have a linux box with a serial port on /dev/ttyACM0

Additionally, large amounts of reformatting in an attempt to help me understand the serial port.