change subscription logic - now keep subscriptions independently from connecting state. No unregisters on disconnect, but resubscriptions on connect. So one-time subscription on app start and just connect() on lost connection - all subscriptions keeps
1. subscribe now similar to HTTP server, with lambda
2. subscribe topic syntax support all HTTP features as path arguments and wildcards
3. event received() changed to receivedUnhandled() for unhandled messages (should never be called in proper work)
4. internal logic got more complicated, several endpoints may be serviced by single MQTT topic, so nested Map used