ex tcp://test.mosquitto.org:1883
nullable
nullable
messages received when disconnected will be stash.
Messages isOverdue after stashTimeToLive will be discard. See also stashCapacity
pubSubStash will be drop first haft elems when reach this size
when received Disconnected event, we will first delay reconnectDelayMin to try Connect. + if connect success => we reinit connectCount + else => ConnListener.onFailure will send Disconnected to this FSM => we re-schedule Connect with
delay = reconnectDelayMin * 2^connectCount
max delay to retry connecting
TODO support wildcards subscription