Change over to use integer posmtx in our vertex shaders

There is no longer any need to continue using a float vertex attribute due to dropping of D3D9 and GL 2.1.
This removes a ugly cast from float to integer in our shaders.

This has only been tested in OGL, not D3D. Probably needs more testing in OGL, but it works for me.

Bit disappointing is that this doesn't fix the issue with Qualcomm and the posmtx using the wrong location in the array. I think Qualcomm may just be broken with UNSIGNED_BYTE in their vertexAttrib* functions...