AP_Math: longitude_scale function made public

Added LATLON_TO_M and LATLON_TO_CM #defines
Copter: use AP_Math's longitude_scale

bug fix to base scaling on home location instead of next_WP which may
not have been initialised
Copter: bug fix to set sonar_alt_health to zero when disabled
Copter: bug fix for autotrim's roll axis backwards
Copter: THR_MID used to scale manual throttle
Copter: use scaled throttle for accel-throttle's I term

Accel throttle's I term is taken from scaled manual throttle
Copter: manual throttle scaling fix

Scaling of bottom half of throttle was changed from THR_MIN ~ 500.
Previously it was from 0 ~ 500.
Copter: fix up some casting issues for wp_distance
AP_HAL_AVR: Improved AVRTimer micros() and millis()

- More efficient code by using 16-bit timer
- micros() now has proper 1 us resolution and less overhead
- millis() has less overhead
- removed unneeded/unwanted initializatin of timers in AVRTimer::init()

pull request 62, approved and merged by pat
ArduCopter: fixed memory unsafe member access in GCS_MAVLINK

* Smokey, this is not 'Nam. this is bowling. there are rules
ArduPlane: fixed memory unsafe member access in GCS_MAVLINK
Revert "AP_HAL_AVR: Improved AVRTimer micros() and millis()"

This reverts commit 527dcdf3b942b99144b8016f0e12a7f7e1218350.

This was causing the MPU6000 startup code to fail, due to time running
backwards.
import FollowMe into new repo
Plane: switch to an array for stream rates

this saves a couple of hundred bytes of flash.
RC_Channel: added secondary elevator support
Plane: added secondary elevator support
After Plane: cleanup driver declaration 4d9a74d, HIL_MODE_ATTITUDE with MAG_ENABLE=1 set results in continuous reboot/APM crash.  Added define for AP_COMPASS_HIL when HIL_MODE_ATTITUDE is enabled.
Plane: Implement issue 80: counterclockwise loiter

- libraries/AP_Common/AP_Common.h: Use bit 2 of Location.options to store
  loiter direction
- ArduPlane/defines.h: New bitmask MASK_OPTIONS_LOITER_DIRECTION for struct
  Location bit 2
- ArduPlane/ArduPlane.pde: New variable loiter_direction
- ArduPlane/GCS_Mavlink.pde: For mavlink loiter-commands use sign of param3 to
  detemine direction. Set Location.option flag accordingly
- ArduPlane/commands.pde: Make sure loiter-directions get saved into EEPROM
  correctly
- ArduPlane/commands_logic.pde: Set loiter_direction on all loiter-actions
  as well as RTL/instant loiter
- ArduPlane/navigation.pde: Yield loiter_direction in update_loiter
Plane: fixed bit combination

bitwise, not arithmetic
Mission planner moved notice