Integrate Linux support for Lobby

The changes I've made so far to get the Lobby running.
Currently the game is not startable but Client is made functional.
Yes. There's a reason for the unit test and the logic in `repository.py` however. A repository pointing to a path without a '.git' repository does not make sense, and it's an invalid state in the system.

This error is indicative of something going wrong earlier in the process (A `Repository` being made with an invalid path), and it should be fixed before this.