0.3.9 tracking

Here is a provisional list of things that I think we should include in 0.3.9:

* [x] Reconnect logic fix #180 #181.
* [x] TLS reconnect fix #178.
* [x] test for SUBSCRIBE response code 0x80 #174.
* [x] allow clients to validate a server without providing their certificate #163.
* [x] binary password #176.
* [x] working MQTTClient constructor #187 #188.
* [x] Improved parsing of connect string https://github.com/adamvr/MQTT.js/issues/189
* [x] Add reconnect and offline events https://github.com/adamvr/MQTT.js/issues/112.

Are there any other backward-compatible things that I'm leaving behind?

As usual, any feedback on this is welcome!

Closes #180.
Closes #181.
Closes #178.
Closes #174.
Closes #163.
Closes #176.
Closes #187.
Closes #188.
Closes #189.
Closes #112.