Fixed a few resource leaks that were causing warnings, and changed the way Vector constants are handled.

I was frustrated to discover that if you forget to call cpy() when accessing Vector2.Zero or any of the other Vector "constants" you can easily modify them by accident. I figured it would be better to have static methods that return new Vectors instead of public static final Vectors that can be easily modified by calling set() or any other operation on them.