Drake function

This implements the "DrakeFunction" idea we'd discussed in #269. I'd like to get feedback about any and all aspects of it, so please, let me know what you think!

This could (probably) be merged in as is without breaking things - everything is contained in the `drakeFunction` package. ~~The only exception is that I had to add the drake root folder to the path in `addpath_drake` in order to get `drakeFunction` on the path.~~

Yes, I think making it private can solve the problem. Also I feel we can 
check if Q is identity to determine if the norm is weighted.

Hongkai
On 08/23/2014 09:19 AM, Andres Valenzuela wrote:
>
> In solvers/+drakeFunction/+euclidean/NormSquared.m:
>
> > @@ -0,0 +1,40 @@
> > +classdef NormSquared < drakeFunction.DrakeFunction
> > +  % DrakeFunction representing the square of the Euclidean norm (or weighted
> > +  % Euclidean norm) for points in a given frame.
> > +  properties
> > +    Q           % Weighting matrix
> > +    is_weighted % Logical scalar
>
> I don't think we would need to special case anything. |is_weighted| is 
> set at construction based on whether or not a non-empty |Q| is 
> supplied. Code using this class should never need to worry about it. 
> I'll make it private. Am I missing something?
>
> —
> Reply to this email directly or view it on GitHub 
> <https://github.com/RobotLocomotion/drake/pull/341/files#r16630561>.
>