utils: More robust humanized_name()
core: In assertion(), update __str__ to auto-humanize the name
core: Removed unneeded check in `Expect.__getattr__()`

`__getattr__` is only called when Python can’t find the name of an attribute through normal means.

Since `self.topic` works via normal means, this check isn’t needed.

w00t for impossible-to-perceive performance boosts! :D
core: Add `__str__()` to registered assertions (auto-humanize their names with `str(func)`)
core: Cleaned code in Expect.__getattr__

The documentation was kind of pointless, since `assert_topic()` (renamed to `_assert_topic()`) isn’t part of preggy’s public API anyway.
utils:AssertionsMap: Improved debug logging
tests/types/test_errors: Expanded tests
Overrides f5782fe0d (which wasn’t working).  Instead, they now get a precomputed `humanized` attribute.
preggy.core: Edited docstrings to they pass `python -m doctest preggy/core.py`
assertions/like: Small rewrite (readability)
assertions/like: Added TODO comment (rewrite _match_lists())
assertions.like: Fixed (Python 3) bug

In Python 3, resolving bytes vs. unicode needs to happen first, not last.
Fix test bug (Python 3.2)
Release 0.11.1