Tournament module

I have implemented a first version of the tournament module. Any comments on the code so far?
Instead of hard coding this, have some sort of presenter class that can be extended and dependency inject it.