Add Basic Teleportation Events

Adds a basic teleportation cause and the events.
in my opinion, Entity should have the following mechanics for physics:

Relative
-----------
rotate(EulerDirection rotation)
move(Vec3f amount)

Absolute
--------------
setRotation(EulerDirection dir)
setLocation(Location location)

If the relative movement is enough to prompt a teleport, do so. If the set of a position is enough to prompt a teleport, do so. No distinction needed and API remains clean.