Improved Entity interface.

This PR is my first pass at improving the Entity interface. The following has been done -

* Removed getPosition, getX, getY, getZ in favor of getLocation
* Removed getVectorRotation in favor of getRotation
* Removed EulerDirection in favor of Vector3f
* Removed interact methods as they are meant for Players
* Renamed teleport to setLocation
* Renamed mount to setRidden
* Renamed eject to setRider
* Renamed getRiding to getRidden
* Renamed isDead to isRemoved
* Updated javadocs
Using `Cause` in event-triggering methods will need to be looked into further, specifically #234 
All event-triggering methods should have a `Cause` overload if that is going to be used, and that should be done as a separate PR.