[docs] Add Sphinx-based documentation (not built by default)

Initial work on documenting the module and also added some comments (in the documentation) how we should probably sanitize the API as starting point for discussion.
If true any method (function or signal) declared in the interface which matches the signature of an emitted signal will be emitted.  Signals with names that begin with an upper case letter are matched to methods of the same name prefixed with 'rc'.   Method arguments form part of the signature and are matched on type, though variant will match any type in the dbus signal, which is important if you're using a signal declaration, not so much function as all arguments are of type variant.