Fix PubSub namespaces

Those were broken since 9e797c1b172870b1324f2d1ff2a911c9d99a3197 as they
always used the basic PubSub namespace, i.e. without a fragment. Which
resulted in e.g. delete requests look like

<iq to="pubsub.ec-xmpp" id="2GAeW-75" type="set">
  <pubsub xmlns="http://jabber.org/protocol/pubsub">
    <delete node="2e92d38c-9e90-47f6-8e26-330d25ebe96b"/>
  </pubsub>
</iq>

when the namespace should be in fact

http://jabber.org/protocol/pubsub#owner
Use mathematical range syntax for dependencies

In dd84d53bbc3f1868d06869f2f65e60a2c1976bc1 the usage of dynamic
dependencies was removed because OSS Sonatype would not longer allow
them, i.e. the '1.2.+' notation, on release artifacts. But they allow
the mathematical range notation '(1.2,1.3]', therefore we use this now.
Rename ConnectionConfigurationBuilder to Builder
Make Async utility use a cached thread pool

Instead of creating a new thread every time, the Async utility now uses
an executor service that is based on the cached thread pool settings
with the following minor modifications:

- Use a timeout of 5 minutes instead of 60 seconds
- Use a custom thread factory to set a meaningful name and mark the
thread daemon