Moving to a better math library, adding move and rotate commands

fixed.  only one inversion happens now, immediately before loading into the modelview matrix