stick 0.7.0

Get input from joysticks, gamepads, and other controllers
Documentation
# Changelog
All notable changes to this project will be documented in this file.

The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://free.plopgrizzly.com/semver/).

## [Unreleased]
### TODO
- When a joystick is removed, add it to a garbage array.  This way we can replace "first-open" index with "last-used" index.  This will also allow users to swap out their controller and still have it connected to the same player in a video game.

## [0.7.0] - 2019-05-22
### Added
- `poll()` method to block until an event is received from any controller.
- Asynchronous support.
- Multi-threaded support.
- `count()` to get the number of plugged in controllers.
- Implementation of default for `Port`.
- `CONTROLLER_MAX` constant, set to 64 controllers.

### Removed
- Pan separate from camera Y.
- Mods

### Changed
- `update()` is now renamed to `poll()` and is asynchronous.  It's now recommended to put your input on it's own thread and call `poll` which blocks.
- There's now a limit of 64 joysticks, because it makes multi-threaded joystick support easier and faster.
- Joystick Ids are now `u8` instead of `u16`.

### Fixed
- L & R triggers without buttons requiring mods to be treated as buttons.

## [0.6.0] - 2019-05-13
### Added
- `Device.lrt()` function to get left & right trigger values.

### Fixed
- Can only extract `Device.joy()` values once.

## [0.5.0] - 2019-05-12
### Added
- Full support for 4 joysticks
- New API with `Port`, `Device` and `Btn`
- API to detect whether or not joystick features are supported (not complete).

### Removed
- `ControllerManager` & `Input`

### Changed
- Input is now received through function calls like `joy()` instead of the `Input` Enum

## [0.4.1] - 2018-08-05
### Fixed
- Crash on specific hardware running Linux.

## [0.4.0] - 2018-05-23
### Added
- Fake Windows support.

### Removed
- `Button` - Now incorporated into `Input`.

## [0.3.0] - 2018-02-03
### Added
- Added `ControllerManager` to simplify API

### Removed
- Removed `Throttle` struct and `Joystick` struct

## [0.2.0] - 2018-01-27
### Added
- Remapping

### Changed
- Use evdev instead of js0

## [0.1.0] - 2018-01-01
### Added
- Linux Support