Refactoring.
Added custom device profile support.
Updating devices is now the responsibility of InputManager.
Mouse input support.
Added mouse input source helpers.