Controller::WasKeyReleasedThisFrame() is now keyboard->key_released() so there is usually no need for a controller. They will completely disappear when joystick axis binding has been ported to InputDevice.
This will allow us to generate sounds on the fly on several dedicated channels. Until now we could only play fully loaded samples.