pep8'd the solutions and cleaned up some things

I went ahead and changed `solutions.py` to comply with pep8 standards. I also changed how instances of the `WordOccurrences` class are printed. I got rid of the explicit print statement and added a `__repr__` method that unfurls the `self.occurrences` dict into something more readable.

For now I left the `challenges.py` file alone pending discussion of the changes I propose here.