modify urlgraberror so it has a url attribute and includes the url in all
error messages.
make it use *args instead of silly if statements
implement PyCurlFileObject. This makes the default and forklifts all the code to
pycurl. This is not finished but is functional for a significant number of the tests.
things known to be broken:
- proxies
- http POST
- non-header-based byte-ranges
- certain types of read operations when downloading a file to memory instead of to a filename
Import progress patches from Fedora.

  These were done over a couple of years:

  . cleanup UI.
  . dynamic terminal widths.
    . deal with serial console.
  . total download stuff.
Import fix for ftp ports in old urilib code (probably worthless now, but meh)
get the content-length/size for ftp pkgs too
- steals parse150 from ftplib. Should work for A LOT of ftp servers, but not all of them
- add self.scheme for which protocol we're using here.
implement throttle/bandwidth controls in pycurl
tested with the progress call back - seems to work very well
- add range support
- get rid of the .part file thing - it makes range-regets harder than they need to be
- make sure regets behave
- make simple/most proxies work
- remove unnnecessary 'have_range' check for pycyurl obj
- make makefile work again without using cvs
- add makefile to MANIFEST.in
- clean up some unused files
- update the changelog
- bump the version
- update the copyright in a couple of places
when I first started this I hacked something into URLGrabberFileObject - this reverts that hack
add git2cl
- make basic posts work
- make readlines() work for mirrorlists in yum (which probably shouldn't be using it anyway)
- do a do_grab() in _do_open() which may or may not be a good idea - I could
also make the _do_grab() happen when someone attempts to hit a method beyond the
file object open
update changelog
add a few more things to be cleaned out
changelog + release date touchup
handle timeouts more correctly (with the exception)
and set timeouts to be connect timeouts since libcurl seems to actually honor timeouts - as opposed
to urllib.
closes rh bug # 515497
missed setting the value from opts.timeout - doesn't really HURT what will happen
b/c if your connect takes longer than 5minutes then you're SCREWED