Transformation stack
To keep track of the current transformation,
the transformation stack is maintained.
Basic operations on the stack:
- push: create a copy of the matrix on the top and put it on the top
- pop: remove the matrix on the top
- multiply: multiply the top by the given matrix
- load: replace the top matrix with a given matrix