ControllerHandler: Always initialize the controllers of a new core

Fixes #3
Gamepad: Make it an analog device
ControllerDevice: Add get_device_type()