Adding 2d vector type
Moved vector decls to their own headers. Vector.h is now just a convenience for including them