Fixed a memory leak for when we're destroying the client.

We kept around event emitters that kept a reference to the client. We now call removeAllListeners on 'close'
Merge branch 'fix_destroy_memory_leak'