Small SpriteBatch Optimizations

A couple of small SpriteBatch optimizations:

 - Pre-cached the transform parameter and effect pass lookups.
 - Replaced Matrix calls with the ref/out versions to avoid the copies.
 - Inlined the math for half pixel offset to avoid full Matrix transform.

I tested this on Windows DX and GL so far.  If someone with a SpriteBatch heavy game could test the GL path that would help a lot.