added prelim implementations of a few useful vector manipulations