Move SFTPClient.get() termination condition to loop end.

Ensures callback always executes even for zero-len files.

Fixes #90
Only override unittest assertions when absolutely necessary.

Fixes #85
Refactoring: it's a thing. Re #85
Merge branch '1.8'
Updated tests for new ssh config format.
Add test for host negation.
Add host negation support to paramiko config.
This is a rewrite of the SSHConfig class to
conform with the rules specified by the
manpage for ssh_config.
This change also adds support for negation
according to the rules introduced by
OpenSSH 5.9. Reference:
http://www.openssh.com/txt/release-5.9
Spelling
Pep8 fixes
Add tests for proxycommand parsing.
Implement support for parsing proxycommand.
Be more pythonic.
Whitespace fixes.
Update paramiko/file.py

Added a closed property as an alternative accessor to BufferedFile's _closed property.
Make send() and recv() fail when channel is closed

``sendall()`` was checking if the channel has been closed, 
and failed accordingly, but ``send()`` and ``recv()`` did not.
This meant that ``chan.send("foo")`` when the channel was already
closed, just blocked forever.
Forgot to import errno
Remove test for presence of ctypes (assumed present in global imports).
Remove dependency on pywin32. Just use ctypes for simplicity.
Somehow missed a pretty important change in the changelog
SSHClient: add 'sock' parameter to connect() for tunneling

Re #77

This parameter, if set, can be used to make Paramiko wrap an existing socket
connected to a remote SSH server. For instance, you could set up another
SSHClient directly connected to a "gateway" host, and then create a direct-tcpip
tunnel to a "target" host directly accessible from the gateway's perspective
(e.g. think of trying to establish an SSH connection to hosts behind a NAT).
The gateway host would then establish a TCP connection to the target host
directly, and a channel is exposed on the client side. This channel could be
wrapped by an SSHClient class using the connect() function, avoiding the need
to establish a new TCP connnection.

This effectively allows you to create tunneled SSH connections.

Based on work by Oskari Saarenmaa <os@ohmu.fi>, in Paramiko pull request #39.

Signed-off-by: Steven Noonan <steven@uplinklabs.net>