Support for loading compressed textures

This adds a way to use glCompressedTexImage2D() to load compressed texture data. I used it for PVRTC on iPad, but there's nothing specific to that in here. The one thing it's lacking is a way to handle mip-mapped textures.. but I can add that eventually if someone needs it.