=====
Backwards compatible with 0.2.1, with three enhancements:
- Persistent ***per-connection state*** (Pending Publish & Subscription ACKs). Verion 0.2.1 cannot be used with two simultaneous, different MQTT broker connections.
- Internal queue to hold PUBLISH requests beyond the window size.
- Adaptive timeouts depending on PUBLISH PDU size and a bandwith estimate. New protocol API function `setBandwith()`. This will avoid dupicate payloads using QoS 1 and 2.