process() and added key_pass support.

remote_shell uses its own loop to handle shell output rather than
relying on read()