AP_L1_Control: Addition of library for geometry calculations required for L1 Control.

calc_L1_circ: generates L1 reference point on circle
calc_L1_line: generates L1 reference point on line
Plane: Integration of L1_Control for straight line and circular navigation.  L1_Control is a non-linear navigation controller that does not require tuning and provides curved path following.

To enable L1_Control for loiter and straight line following add the following to your APM_Config.h:
#define L1_CONTROL ENABLED
#define L1_REFERENCE_LENGTH [length]
where [length] is a reference length in meters.  The smaller the value the higher gain.  Try 2*groundspeed.
L1_Control: Added support for turn direction. 1 for clockwise, -1 for counter-clockwise