Calendars are revived after being offline

This is a quick'n'dirty fix for the situation easily reproducable with
older Lightnings as the one used by Postbox.  After going back online
(e.g., from sleep on laptop), these old Lightning start to ask our
extension immediately and calendar synchronizer is also being
triggered.  To give better UX we hide nasty warning that calendar
cannot be synchronized and as soon as they can, we refresh them which
gets rid of a warning associated with them and loads recent data.

However, this should be probably hadled differently.  But it makes
sense to try that only after offline support is finished.
SD provider data parsing DRYed

There was a huge similarity in the way how DNS and well-known URI data
are parsed to the resource which is transformed to Service instance.
The code was moved to separate parser.
SD provider data parsing DRYed

Again, huge similarity in the way how Service instances are created.
There's a probably room for more refactoring but for now this is
enough.
SD clients uses Service's toString

This simplifies code which contructs URLs.