Allow IPv6 host addresses

Syntax examples:
  fe80::1111:2222:3333:4444
  user@fe80::1
  user@[::1]:2222 (square brackets are necessary for non-standard ssh port number)
Add IPv6 support for rsync project synchronization
Add some IPv6 related comments
Add test coverage for IPv6 related functions
fix typo
Mentionning lcd in the tutorial.
replaced ``lcd`` with  `~fabric.context_managers.lcd`
Takes the ammount of columns from the current terminal
to determine the max width to use.
Take accounf of 'trail' length
Use _pty_size() from fabric.operations to get the terminal size
pep8 injection
Refer to actual host value, not env var, in hostkey errors
Merge branch '1.4'
Refer to actual host value, not env var, in hostkey errors

1.3 edition
Merge branch '1.3' into 1.4

Conflicts:
	fabric/network.py
Merge branch '1.4'
No idea why we were hardcoding anything here, ever.

Caused #303, and also breaks inside bpython, as it
happens.
Merge branch '1.4'
Implement Fabric-level host aliasing.

Fixes #563
Add another test re #563