Mouse Scroll Events - device separation

- The wheel event type is now determined in by Device

- The various input checking in Device have been moved to a new function