Added and changed the Uniform functions.

I've changed <code>Uniform*fv(count int,v []float32)</code> to <code>Uniform*fv(v ...[*]float32)</code>.
removed the count because you can use slices,
and I think there is more chance someone will use <code>[]Vector2/3/4</code> instead of <code>[]float32</code>, also they can use reflect&unsafe to convert []float32/anything to <code>[]Vector2/3/4</code>. (it was already true before the change)
<code>(type Vector2 [2]float32)</code>

Added <code>UniformMatrix*fv</code> and <code>UniformMatrix*f</code>, <code>UniformMatrix*f</code> is not a real function in opengl but its optimized for using 1 matrix when you already got the pointer.

Added unsigned int functions as well.