Version 0.2
Changes since 0.1:
- Replaced traits with abstract classes because they were giving compilation errors when used in Java.
- Removed automatic type conversion because of the excessive number of combination.
- Added "swizzling" (i. e. get a 3d vector from a 4d vector with '.xyz')