Map objects vector has to be locked while iterating over it. So adding an object will save the object to an auxiliary vector and add it at the end of the update if necessary.
Gamepad system refactored. No need of a Gamepad controller anymore. The gamepad will be pulled instead of emitting a signal. This way it integrates to our game loop better.
Removed some code added/changed for debug purposes.