Add relocate() & bear() methods to player.js.

Allows the player to be moved to a new position or rotate without regard
to it's current position or rotation.

Signed-off-by: suicidepills <atom.mac@gmail.com>
Undo/Redo support.

After everything we did during the initial sprint, this took about 20
minutes of code.  We were so close!

Signed-off-by: suicidepills <atom.mac@gmail.com>