Rewrote the cross product to use new getX/Y/Z

Added methods to check x, y, and z components of a vector. These are now
used in the cross method.
Also fixed the dot method so that it actually works by iterating through
the v vector instead of only iterating through the u vector.