improvements to headOn.Vector;

Allow to specify an output vector to use instead of returning a new
vector. Should help with garbage collection from having to clean up
vectors