Slightly extended documentation for BaseHandler.

The documentation was ambiguous as to what an implementation of BaseHandler had to do, so I tried to make it a bit clearer.

But there are two issues:

1. Is `flatten`'s data parameter really always a dictionary?
2. I get an encoding-related error when trying to build the docs, but they seem to show up fine. Is it supposed to be this way?