Check the conn in nil before closing if failed connect()
Check the conn in nil before closing if failed connect()

It's possible that the reason connect failed is that the connection
dropped/was reset and the conn is already nil, calling Close() on a
nil conn causes a panic, so we're now checking that the conn is
actually not nil before trying to close it and run the rest of the
failed to connect code.

resolves #94

choonkeat/paho.mqtt.golang,choonkeat/paho.mqtt.golang,choonkeat/paho.mqtt.golang