Error Handling and other minor TODOs

Implemented:
- invalid input handling
- re-entry into the game loop
- Order of opponents move prompts fixed
- Some aesthetic changes around the code