Initial rework of vertex_buffer to mimic numpy

Setting / getting values should be working
in most cases, albeit unoptimised.
Setting attributes is partially supported but
requires rework / rethinking anyway.
Update core quad renderable to new vertex buffer.
Fix PyDispatcher being listed as PyDispatch.
Correct a reference to PyDispatch.

Just remove the duplication of requirements.
Update Shader __str__ and move _generate_enum_map.

_generate_enum_map is now in gl.py.
Shader now generates __str__ descriptions that are
in keeping with normal python __str__ results.
Rewrite VertexBuffer and update example code.

Delete dtype_vertex_buffer.py.
Rework VertexBuffer to be a simple data store.
Remove pointer calls from VertexBuffer.
Add new Attribute classes that wrap the gl*AttribPointer
calls.
Add new BufferAttributes class that stores and activates
buffer attributes.
Add texture rewrite to ROADMAP.
Merge pull request #25 from adamlwgriffiths/vertex_buffer

Vertex buffer