|MERGE|
origin/unstable -> system_input
Merge remote-tracking branch 'origin/system_input' into system_input
[Linux] Keyboard input is registered in LinuxInputManager::Initialise

|SOURCE|
[Linux::System::LinuxInputManager]
* Initialise adds any keyboards detected to the list of input devices
InputManager's Initialise takes a WINDOWDATA parameter

|SOURCE|
* InputDevice.cpp moved from the incorrect Linux directory to the Common
  directory
[Common::System::InputDevice]
* Added IsConnected to determine if the device is connected to the machine,
  this can be updated by the InputManager for the user to discern whether or
  not to attempt to get a device's state
[Common::System::InputManager]
* Initialise requires a WINDOWDATA struct to be passed in as a parameter, this
  is to make the interface less cumbersome for the user not needing to use
  SetWindowData or use a different constructor, and then initialise
* SetWindowData removed
[Linux::System::LinuxInputManager]
* Removed the WINDOWDATA constructor
* Removed SetWindowData
* Added WINDOWDATA as a parameter to Initialise, replacing the functionality of
  SetWindowData