use six.moves.xrange for python3 compatibility
also retry if connection broken with error
Skip network tests if machine isn't on a network

Adds a new `requires_network` decorator which should be used if the test
requires a connection to a network resource like TARPIT_HOST. Otherwise, the
unit tests fail when running on an isolated machine.
Merge branch 'network-unreachable' into retries
Unreachable also manifests itself as httplib.CannotSendRequest
Dont increment on fall through
Check more specific exception types raised by httplib