shader uniform fixes

ofShader::setUniformMatrix now accepts a (optional) count parameter, so you can pass an array of matrices. useful when sending many matrices to the shader e.g. for bones, skinning, setting transformations of many objects simultaneously. 

Also made getUniformLocation public, so in the app we can manually get uniform location for a custom uniforms, like structs etc. 

Fully backwards compatible since the 'count' parameter defaults to 1 (like it does for the float set Uniforms)