fix(client): release underlining resourse

1. set underlining resource __sftp and __ssh to null after close the client
otherwise there will be error when I scp with same client second time

2. removeListener after client closed;
eg: async.each([folders], function(folder, next) {
  client.scp(folder, dest, function() {
     next();
  })
}, function done() {

})

in this demo, the next callback will be called twice