RCMapper: simple mapping object for primary input channels

allows arbitrary mapping of first 4 channels
Copter: integrate draft RCMapper
RC_Channel: removed global rc_ch[] array

hide it as a object static instead
AP_Mount: use RC_Channel::rc_channel() instead of rc_ch[]
Plane: use RC_Channel::rc_channel() instead of rc_ch[]
Rover: use RC_Channel::rc_channel()
Copter: removed use of rc_ch[] global array
Plane: allow channel mapping of first 4 channels

this makes it easier to support DSM and SBUS radios
AP_Mount: make the code a bit easier to read
RC_Channel: added output_trim() and read() functions

these make using rcmap in the plane code easier
Plane: fixed remaining places where primary channel ordering was assumed

should now use rcmap for all inputs