source_address not supported in python2.6

thanks @pasha-r
remove moved comment
Add better test coverage

Add better validation in util.py
Convert get_request_timeout and get_connect_timeout to properties,
per the Url class in the same file
Python 2.6 compatibility
Use coveragerc properly
Timeout.total is a number or None

This simplifies the comparison logic.

Connect timeouts now follow the below table:

connect = int, total = None: connect is int
connect = int, total = int: connect is minimum

connect = None, total = int: connect is total
connect = None, total = None: connect is None

connect = object, total = int: connect is total
connect = object, total = None: connect is object
Fix test coverage for Python 3