Show each scene in a pushed matrix.
Show each scene in a pushed matrix.

Previously, the scene was recalculated by attempting to move back to the
origin and then applying the new transformation. However, because
translation and rotation existed simultaneously, this ended up causing
the original origin to shift.

Now, we use the new_matrix context manager to use glPushMatrix and
glPopMatrix in order to not affect the original scene.

masasin/spirit,masasin/spirit