Add slots for Vec2

There will likely be a lot of these instantiated, so this should
save memory.  Looks like newer versions of python3 (3.3?) may be
optimizing this already and won't benefit from slots.
Add test for __getitem__ and __setitem__

Add tests to ensure that getting and setting with the format vec[5]
works.  Also added comments.
Add test for Vec2().as_tuple()
pep8 fixes
Fixup subtract methods and tests
Add tests for sum, normalize, scale, and translate
Fix and test normalize, dot, and unary -
Add tests for projection_v3 and rotate_around_v3
Rename and add test for ave_list_v3
Add tests for squaring Vec3s and other small fixes
Remove old get_data_ptr() function
Added tests for cross, dot, square, and __imul__
Merge pull request #13 from olsoneric/more_vec3_updates

More Vec3 updates