HAL_Linux: fixed build
autotest: added linux build to build_all.sh
HAL_Linux: make I2CDriver more portable

this allows it to build on the Beaglebone
HAL_Linux: default to hal.console on stdout
AP_Menu: copy with newline from console

helps debugging on HAL_Linux
AP_Menu: be friendly to multi-tasking OSes in menus
HAL_Linux: fixed scheduling priorities

need to be between 1 and 99
Plane: moved Linux logs to logs directory
SITL: added a SIM_GPS_HZ option

this allows simulation of slow GPS updates (for example, the 1Hz GPS
problem)
Merge remote-tracking branch 'ap_source/master' into Source
BattMonitor: initial draft lib
Plane: integrate BattMonitor
AP_BattMonitor: minor cleanups

cleanup name to be multiplier not div ratio, and make 2 variables
non-static
Plane: auto-upgrade battery variables in EEPROM
SITL: added battery voltage and current

assume 3DR brick
AP_Battery: fixed parameter name and default voltage ratio

also setup SITL with right pins
BattMonitor: update comments and defaults
BattMonitor: add exhausted method

Current total calculations changed to use micros instead of millis for
improved accuracy
Removed unused pack_capacity accessor
Initialise private members
Plane: integrate BattMonitor exhausted method

BatteryMonitor object made static
Removed unused macros for battery voltage and current monitoring
Plane: remove test_battery from CLI