The prototype function takes in a result parameter and calls the static normalize function with `this` and `result` as parameters.  That function returns a `new Cartesian3` when `typeof result === 'undefined'`.  So I think I do need to pass a result parameter to avoid an extra allocation.