Events API

Here is a list of the things we still need to do for the events API.

- [ ] player events
  - [x] PlayerJoinEvent and PlayerQuitEvent (#176)
  - [x] AsyncPlayerChatEvent (#158) (#143) (#151)
  - [x] PlayerChangedWorldEvent
  - [x] PlayerInteractEvent
  - [x] PlayerMoveEvent
  - [ ] achievement (#210)
- [ ] Chest events - refer to inventory events?
- [ ] Inventory Events
  - [ ] CraftItemEvent
  - [ ] EnchantItemEvent
  - [ ] InventoryDropEvent
  - [ ] InventoryAddEvent
  - [ ] InventoryPickupEvent
  - [ ] InventoryClickEvent
- [x] Entity riders (#94)
- [ ] Game mode change (#82)
- [ ] Entity interaction type (#206)
- [ ] Teleport cause/teleport event
- [x] Weather Events  (#212)
- [x] LightningStrikeEvent, WeatherChangedEvent, WeatherEvent (#212)
- [ ] Individual Player (#158)
- [ ] Entity events
  - [x] EntityDespawnEvent
  - [x] EntityDamageEvent
  - [ ] ProjectileLaunchEvent
  - [x] EntityBlockModificationEvent
  - [x] EntityCreatePortalEvent
  - [x] EntityDeathEvent
  - [ ] EntityInteractEvent
  - [x] EntityRegainHealthEvent
  - [x] EntityTeleportEvent
  - [x] EntityTameEvent

Some entities die on unload.