python: add Monitor::onNotification() to receive (JSON-RPC) notifications

This adds another callback called onNotification() to the Monitor class which allows addons that implement the Monitor class to receive JSON-RPC notifications directly through the python bindings. Addons already have the possibility to send JSON-RPC requests to xbmc through the python bindings (and can therefore avoid using HTTP, TCP or WebSockets) but to receive notifications they currently have to rely on a TCP or WebSocket connection. Unfortunately those must be manually enabled by the user in the service settings of XBMC so it's not guaranteed to be available. In addition a user might have changed the default TCP port so the addon also needs to provide a setting for the TCP port which is all very cumbersome.

The method signature looks like this
```
Monitor::onNotification(const String sender, const String method, const String data)
```
"sender" is the name of the sender of the notification (mostly "xbmc").
"method" is the name of the notification (e.g. "VideoLibrary.OnUpdate").
"data" is the JSON-encoded data of the notification (e.g. "false" or "0" or "{ "type": "movie", "id": 25 }").