Proposal for Location<T extends Extent>

This is a proposal for `Location` to be `Location<T extends Extent>`.

`Location` is `Extent/World` + `Vector3d`

It also adds some methods to get/set `Locations`.

Example usage:

```java
Location<Extent> location = entity.getLocation();
entity.teleport(location.setExtent(otherWorld));
```

Alternatives:

* `Location` only handles `Extent` (`Location` is not generic)
* `Location` only handles `World`
* We have no `Location`