Getting ready for a API

- Allows external plugins to have their custom ArenaManager: Not
finished
- Started commenting
- Fixed a few bugs