Better handling of serial port exceptions.
** Added try/except blocks for reading serial port.
** Added new state to handle exception scenarios, ABORT state.
** Modify shell verbose output to get more details.
** Refresh serial port and baud list when opening settings dialog.
Improved serial port communication.
** Moved worked thread and added new serial RX thread to
   prgexec.py (new file).
** Added new global event for serial rx data.
** All serial output now goes trough thread.
** Receive serial data is only from serial RX thread.
** Using pySerial read() api instead of readline.
** Changed all gcs to gsat name sapace.
** Added appropriate GPL2 copyright to all .py files.
Improve serial communication and add tinyG ack detect
* Removed blocking call from main window when writing to serial.
* Added regular expression to find ack and error-ack.
* Added WaitForAcknowledge() function.
* Change run/step/send gcode calls to use WaitForAcknowledge as oppose
  to just wait for any response. this will allow got actually waiting
  for a OK from device instead of any output that could be verbose
  information. This is what also allows to remove the blocking call.
* Added more error checking to SerialWrite.
* Removed dead code.
* Use "".join([]) instead of += much faster performance.
* Now sending initial "$" after port open to make sure tinyG goes into
  text mode.
* Better verbose and vverbose ouput.
Make sure we can stop on waiting for ACK and G-Code msg dlg update.
* Added code to be able to exit Waiting fro ACK loop when user hits STOP
  button.
* Added NULL sw state and cmd ID, for ease of init vars.
* Upgraded G-Code msg to allow to continue with out having to close dlg
  and hit run again.
* Added re code for tinyG update machine status vars.
Update Read-me and get ready fro 1.4.0 release.
Added code to update status and jogging panels, from tinyG verbose info.
* Re-coded update logic to work with both tinyG and grbl.
1.4.0 RC1, Added Status update for TinyG
* Added code to update x,y,z from status query.
* Updated Read-me file.
* Moved reg-ex code for incoming data to its own function.
* Updated copyrights.
Added config file name option, % lines sent, other features.
* Added config file option, file will still be created in Home folder
  but name can be changed per wx.FileConfig.
* Added display of % lines sent.
* Added check for wxPyhton min ver (2.8)
* Started work on run time, not ready fro prime-time.
* Capture Status for TinyG response to status report.
* After connecting query for status report, for initial UI update.
Added new command for explicit wait for ack
* Added command to explicitly send and wait for ack, as there are
  many commands that will not return ack, specially grbl "?" when
  in queued mode (gcode M0).
Change jogging panel to provide finer control over each axis.
* Replace job buttons.
* Moved custom buttons to bottom.
* Moved jog memory stack to second column.
* Updated cmd strings.
Fix bugs, clean dead code, update read-me file.
* Fix bug in compvision.py and wxPython2.9+.
* Added config item to disable crosshair.
* Removed CLI panel menu item as it doesn't exist anymore.
Added Link information status, updated screen shots.
* Add Link port and baud to status panel.
* Updated screen-shots.
* Update read-me file.
* Fixed old bug with baud speed not updated correctly on state data
  luckily it was not used until now.
Update image links in read-me file.
Added support for OS X
* Tested OS X on a old MAC OS X 10.5, with both TinyG and GRBL.
Updated images and bug fix
* Updated screenshots
* Fix bug when camera fail to connect div/0 on center.
* Added TODO comment for elapsed time...
Updated read-me file.
Merge pull request #11 from duembeg/tinyG_support

Added TinyG and OS X support.