Merge pull request #75 from BrianAdams/master

Great effort Brian!

* Added a current read-out. Smoothed the current sampling in the ardurino. 
* Added beagle CPU utilization.
* Added smoothing function for all servor and ESCs. This shoudl reduce AMP spikes as the torque in not as high as the adjustment in force is spread over time
* Fixed bug with re-using the same timer causing other events such as sending stats not to trigger
* Added hack to allow direct arduino firmware upload from the src folder instead of having to upload via browser by simply selecting upload firmware in browser without selecting a file. Increased default video to 1920x1080.
* Changed magic numbers for servor neutral to Constants defined in motors.cpp
* fixes #57, the events were not getting added to the new serial port reference
* Added missing stage script for the load firmware from source feature.
* fixed #24; The firmware upload scripts now report errors and a graphical representation shows up on the UI
* Add a raw display of streaming sensor data to the cockpit
* Added free memory on Arduino to telemetry data
Merge pull request #83 from BrianAdams/master

Improved Keyboard and Finer grade motor control ready. Approved by Dave for today's merge.
Added deadzone for the gamepad to stop motors turning when gamepad sticks are in neutral.
Added trim and power selection options to the gamepad. Only tested on the Logitech F310.  Did not change any existing mappings so it should not break anything else.
fixed #104; system ignores bad data but does not put motors in stop mode. Added basic data verification on motor commands as corruption tends to be a missing or addtional digit. System now only resends the motor commands if the motors need to change as the refresh is built in to the servo library.  This should also help with issues around callibration.
Merge branch 'master' of https://github.com/OpenROV/openrov-software
Merge branch 'issue_104'
Added HTML5-JavaScript-Gamepad-Controller-Library for broader gamepad support. Altered it to support the Standard Direct Gamepads.  Changed the trims to lock in the current lift and thrust values when the RB button is pressed.
Improved dynamic detecton of gamepad. Some of the keyboard commands now remain active when gamepad detected.
Added defence code to prevent inaccurate axis reads at the moment the gamepad is plugged in
Merge branch 'gamepadfixes'