Copter: inertial nav waypoint controller

#define added to allow compile time selection of traditional or inav
based loiter and wp controllers
Copter: add selection of inertial nav wp controller to APM_Config.h
Copter: add advance track call to actually move towards waypoint

Also added unrelated check that waypoint is valid before updating
waypoint distance.
Copter: enable inav xy by default
Copter: add zero slope checks to wpinav

also added RTL fix to set wpinav target explicitly
Copter: remove baro-only alt hold

Saves 8 bytes of memory and more importantly simplifies the alt hold
calculations
Copter: take-off code cleanup

remove redundant setting of loiter target.
explicitely set throttle mode to THROTTLE_AUTO
Copter: set wpinav controller targets in nav calls

All navigation commands now properly set wpinav controller targets
except CIRCLE related commands.
Copter: new ROLL_PITCH_WP_INAV roll-pitch mode

small corrections to allow waypoints to work with new inertial nav wp
controller
Copter: remove filters from inav loiter
Copter: add logging of compass values

Removed rarely used ITERM because we didn't have enough bits in the log
mask
Copter: remove non-inav loiter and wp controllers

lon_speed, lat_speed changed to float
do_takeoff, do_land now set roll-pitch, yaw and nav modes specifically
removed fast_corners functionality (may need to be reimplemented with
new inertial nav controllers)
Copter: remove unnecessary #defines from APM_Config.h
Copter: update default loiter gains for inertial nav
Copter: add roll-pitch slew for auto modes

Added reporting of roll, pitch inputs for ACRO, AUTO