Drake gradient util

Pull request for C++ gradient utilities. I put general purpose functions like {get,set}SubMatrixGradient, transposeGrad, etc. in drakeGradientUtil, and functions that compute gradients of geometrical things in drakeGeometryUtil.
yes, i think it's ok because of this comment.  i'm not against eventually changing the second derivative format (since you've mentioned it, i've had a least a few times when i wished ddf was the geval derivative of df).