Arduino refactor and Heads Up Display

This is a stable point. 
It adds significant refactor of the Arduino code and introduces a plugin model to make it easy for others to add new sensors and capabilities that can be easily submitted back to the projects in pull requests.  It better defines the standards interface between the beagle and Arduino.  
We also add the first cut of the heads up display and compass.  The Heads up display is always on at the moment. The compass only appears if it is enabled on the Arduino.  Future updates will break up the Heads Up display and only show those parts that have data to display.

Anyone who has added a compass can now integrate their Arduino code and not worry that it will break in a future update!  They can now see the on-screen compass in Cockpit!