massive flightmode refactor, totally broken in dozens of ways

but for the first time in about 24 hours it typechecks, so we've got that
going for us, which is nice
flight: ControlRequest now ControlLawRequest, missing mods checked in
userinput: start sketching out refactored PPM decoder
flight: continued work on userinput
flight user input: fill out arming machine
flight userinput: arming machine & control law works for ppm only

* need to audit for spots i left blank, check userinput,
  implement mode changing
userinput: combination code for arming and modes
flight gcs transmit sends heartbeat with control law in custom mode
userinput controllaw: default auto law
flight.control.altitude: saner use of control law
userinput.ppm.decode fixup

* kinda important!
deprecate old flight.userinput
userinput: add multiplexing for rcoverride input

* still not working correctly, for some reason the mux
  never gets an rcoverride message from the GCS even when
  mavproxy is sending them. need to investigate further
flight.userinput: bugfixes to get mavlink input to work
motor mixing: when armed, copter motors will spin

* picked idle throttle to be 15% - seemed appropriate
  for big PWM based copter (minimum necessary),
  maybe a lil high for AR Drone. parameterize later if
  necessary
Merge remote-tracking branch 'origin/master'