[WIP] 3D Textures

Implementation of 3D textures using PyOpenGL.
You need to rename this to `_update_data` (this was changed since you started the PR).