Implements massless position controlled control surfaces

Works on #107 by implementing position controlled control surfaces via linearizing around u = 0 to create a B matrix for the control surfaces.  Includes a unit test and, while changing a substantial amount under the hood, does not modify the existing RigidBodyWing interface and testWing should still pass.

I did this by implementing RigidBodySubWing classes that dealt with the actual computation and a RigidBodyWing (which can contain multiple subwings) sums up the forces created by its subwings.  The old interface is implemented by creating a single subwing and having calls basically pass right through RigidBodyWing to its instance of the RigidBodySubWing.  @blandry should take a look.
take a look a the help in geval.m

On Oct 24, 2014, at 6:10 PM, Andy Barry <notifications@github.com> wrote:

> In systems/plants/@RigidBodyWing/RigidBodyWing.m:
> 
> > +      sideslip = wingvel_world_xyz'*wingYunit;
> > +      if (nargout>2)
> > +        dsideslipdq = wingYunit'*dwingvel_worlddq + wingvel_world_xyz'*dwingYunitdq;
> > +        dsideslipdqd = wingYunit'*dwingvel_worlddqd + wingvel_world_xyz'*dwingYunitdqd;
> > +      end
> > +
> > +      wingvel_world_xz = wingvel_world_xyz - sideslip*wingYunit;
> > +      if (nargout>2)
> > +        dwingvel_worlddq = dwingvel_worlddq - sideslip*dwingYunitdq - wingYunit*dsideslipdq;
> > +        dwingvel_worlddqd = dwingvel_worlddqd - sideslip*dwingYunitdqd - wingYunit*dsideslipdqd;
> > +      end
> > +      
> > +    end
> > +    
> > +        
> > +    function [wingvel_rel, dwingvel_reldq, dwingvel_reldqd] = computeWingVelocityRelative(kinframe, manip, kinsol, wingvel_world, dwingvel_worlddq, dwingvel_worlddqd)
> What should the order here be?
> 
> —
> Reply to this email directly or view it on GitHub.
>