AP_InertialSensor: use fixed size arrays

apparently helps SITL build on MacOS
AHRS: add update_trig

Calculates helper trig values including cos_roll, cos_pitch
AHRS_DCM: call update_trig
AHRS_HIL: call update_trig
AC_WPNav: use ahrs trig values
Copter: use ahrs trig values
AP_HAL: added enable_flow_control() option in AP_HAL
AP_BoardConfig: added BRD_SER1_RTSCTS and BRD_SER2_RTSCTS

used to enable flow control on telemetry ports
OptFlow: remove unused variables

Saves 24bytes RAM by removing several static variables that were used
only for internal calculations
RangeFinder: remove raw_value, orientation variables

This saves 10bytes of RAM
RangeFinder: remove raw_value from SharpGP2Y
PulsedLightRFinder: read method returns int16_t
MaxsonarRFinder: convert_raw returns int16_t
MaxsonarI2C: read method returns int16_t
Maxsonar Test: remove raw from output to user
AP_Curve: remove virtual from method declarations
FilterWithBuffer: make get_sample non-virtual

virtual added to apply() and reset() declaration inline with base class.
This should have no impact on memory usage or functionality
DerivativeFilter: update and slope non-virtual

No classes inherit from DerivativeFilter so no need to be virtual.
Saves 4bytes of RAM.
LowPassFilter: make methods non-virtual

No classes inherit from this class so no need for set_cutoff_frequency,
set_time_constant and reset(T) to be declared virtual.  Saves 6 bytes of
RAM.
HAL_PX4: added automatic hardware flow control detection

this allows us to detect if hardware flow control is not available and
automatically disable it