Lots of changes, inital work on event/client code.

kloptops
- Renewed effort to make more meaningful commit messages.

plex-reporter.py
- we now force pickle protocol 2

README.md
- fixed a url
- wrote an objectives section and musings.

plex/event.py
- added code to help with event debugging
- EventParserController
  - removed use of collections.deque, it wasn't playing well with
    pickle, and in the long run its performance gain was negligible.
    I profiled a bunch of alternatives and found using list acceptable.
  - fixed parse_finish to actually work properly.
  - fixed a bug in parse_dump and parse_flush in python 3

plex/media.py
- reformatted some of the code.

plex/util.py
- reformatted ratings, added our own ratings to content_ratings
- new method get_content_rating_name
- new zlib compress/decompress string methods. Used in something I'm not
  ready to release.

plex/client.py
- NEW! ALL SHINY - VERY BROKEN
- This code is the glue that binds events to actions, initial support
  for restrictions are written, TimeRestriction is mostly coded (but
  not yet tested...).