Added firing capability; sounds and art; plus entity base work with velocity

Entities now have an array which can get recycled for 'bullets'.
You can also specify velocity for these and they will be translated in the step() function.
Potential crash fix when last_vertex is zero (VertexStream)

...and vertex data is populated. I presume this generates a draw call with 0
elements -- which is causing a crash in the geforce driver.