Main loop and input handler.

Add InputHandler class (with interface).
Add GlWindow mock for IWindow interface.

Update Application tests.
Update all 'core' implementation.
Update main() as application builder.

Fix N/A.