Changes to AbstractArena

Made it abstract, along with adding the abstract method to check if the
arena has ended.
Added SinglePlayerArena
Removed SinglePlayerArena

Discovered it wasn't atall needed, managed to refactor code so that it
wasn't needed atall.
Renamed AbstractArena to Arena

Refactored through rest of code.