Added explicit asynchronous start function

A `connection` can operate synchronously, which
involves less overhead. It will be in a synchronous-
only state when it has been newly constructed or cancelled.

`dbus::impl::connection::start()` begins/resumes
asynchronous operation, and should be called automatically
whenever an asynchronous operation is requested.