[Config] Thor now links SFML dependencies
[Math] Improved compiler errors at thor::Distribution constructors
[Input] Renamed Joy(x).button(y) to joy(x).button(y) for consistency
[Input] Renamed Joystick to JoystickButton
[Input] Added JoystickAxis and new corresponding action
[Input] JoystickButton, JoystickAxis: Renamed id variable to joystickId

This is more expressive and consistent with SFML's naming in the event structures
[Input] Joystick.hpp: Moved implementation to .cpp file
[Particles] Made use of operator/ for sf::Time
[Input] Refactored action implementation
[Input] Renamed joy() to joystick()
[Input] Action implementation: Negated filter

Specifying when events are chosen is more intuitive than when events are discarded
[Input] Simplified Action implementation further
[Input] Implemented custom actions
[Input, Time] Removed Listener typedefs, wrote full std::function types in parameter lists
[Input, Time] Added connect0() methods for nullary listeners
[Input] ScopedConnection: Added default constructor and move semantics