Fix a crash in ex_prim when vertex buffer creation fails.

Also remove an unused second vertex buffer.
Add a note about vertex/index buffers being liable to fail on lower-end GPUs
Move the half-pixel shift in D3D into the projection matrix.

The shift is necessary as OpenGL has the top-left corner of the viewport
at 0, 0 while D3D has it at -0.5, -0.5 (i.e. the center of the top left
pixel in D3D is at 0, 0 while it is at 0.5, 0.5 with OpenGL). The
correction used to be applied in the matrix set by al_use_transform, but
this is not correct for non-standard projection matrices.