add `Key()` method to the `Handler` concept

For more details see: https://github.com/miloyip/rapidjson/issues/132

This commit tries to minimize the required code changes and forwards the `Handler::Key()` calls to `Handler::String()` wherever possible in order to not break existing code; or at least not code deriving from `BaseReaderHandler` when implementing a custom `Handler`.
`MyHandler` should inherit from `BaseReaderhandler` (which would provide this forwarding already):
````cpp
struct MyHandler : BaseReaderHandler<UTF8<>, MyHandler> {
````
Secondly, if you add the explicit handler function, you should probably print `"Key("` ...