Recalculate the mesh every frame.

This is extremely slow, but effectively this is what we need to do.
So this forms the basis of the implementation we need to optimise.
Implementation with a basic vertex buffer object.
Proof that fast frame rate is possible if the voxel world to mesh conversion is quick
Proof there is huge overhead in converting Python lists to ctypes arrays
Implements voxel data class in C for reference.
Change to use only the C voxel library.
Vertex structure slightly more compact.
8x speed increase at mesh build just by inlining get() and removing bounds check
Slight tweaks to the way we use VBOs in the Python code.
Offload mesh drawing and VBO handling into libvoxel.
Minor tidy of drawing implmentation in libvoxel.
Redner using multiple vertex buffers with a space split into chunks.
Chunk meshes only rebuilt when required.
Benchmark util no longer functional.
Minor tidy
Voxel chunks track voxels within them.
Add note about fixing mesh rebuilding.
Add note about needing to fix chunk boundary changes
Slightly more interesting test scene.
Change OpenGL library to PyOpenGL