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
* Removed eject, dismount in favor of setVehicle
* Renamed getRiding, getRidden in favor of getVehicle
* Renamed teleport to setLocation
* Renamed isDead to isRemoved
* Updated javadocs
If `null` is accepted, the method argument should be marked with `@Nullable`.