added useSharedConnection option to allow a new connection for each new hubs

Keeps previous behaviour of using a single global connection by default, but provides an option to create a new separate connection when creating a new hub.