changed init sequence for nogui. investigating CANusb protocol for error reporting
Added a few more comments. Added return values for some functions.
Merge pull request #5 from Susurrus/master

Added a few more comments. Added return values for some functions.
Created an error code return value for any issues arising from pyserial and CANusb init-ing. Created an enum for these codes. All error printing is now done in main -- CLI version only
Check for failure codes returned from the CANusb hardware.
First move towards unifying the GUI and CLI canport code.
Merged all CANPort code together to proper subclasses.
Moved some constants for CANPort into the base object class as static constants.
Also threading should now work properly.
Merge pull request #6 from Susurrus/master

Various changes
minor bugs and note to start tomorrow on ui.mainwindow:340
GUI: fixed raw message bug (not transmitting raw messages if no metadata loaded) with an if branch on GUI_rawFlag in outmessage.py
rudimentary error checking in GUI. see pyserialInit function
Firmware: Added firmware code for the CANode.
Deleted messageInfoParse, merging its contents into messageInfo.
Also moved some standalone Init() functions into the constructor of some objects.
Various other minor cleanups.
Firmware: Fixed many bugs and added message transmission support.
The addition of a test framework helped find and fix these bugs, which is now also committed.
Merge pull request #7 from Susurrus/firmware

Firmware
Changed xmlimport function to allow for autoboatMessages file type.
TODO.txt update
Firmware: Updated to support all CANusb-supported preconfigured baud rates.
TODO update
Refactored CANacondaMessage to be a wrapper around our true data object, the CanMessage.
Involved refactoring a ton of stuff, but mostly we are moving towards all string parsing being done to spit out a CanMessage, and then that being used everywhere.