Work around failing test due to distutils.version issue

In py3k the following fails, handle this and use string comparison in worst
case.

Tested on 2.6 and 3.2

>> from distutils.version import LooseVersion as LV
>>> v1, v2, v3 = (LV('1.1'), LV('1.1.2'), LV('1.1a1'))
>>> v1 > v2
False
>>> v1 > v3
False
>>> v2 > v3
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "distutils/version.py", line 70, in __gt__
    c = self._cmp(other)
  File "distutils/version.py", line 343, in _cmp
    if self.version < other.version:
TypeError: unorderable types: int() < str()
Fix launchpad urls

Fixes issue #36 by supporting launchpad urls.

Functionally tested

python pip/runner.py install -e bzr+lp:ijson#egg=ijson
Obtaining ijson from bzr+lp:ijson#egg=ijson
  Checking out lp:ijson to ./src/ijson
You have not informed bzr of your Launchpad ID, and you must do this to
write to Launchpad or access private data.  See "bzr help launchpad-login".
  Running setup.py egg_info for package ijson
Installing collected packages: ijson
  Running setup.py develop for ijson
    install_dir /Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/site-packages/
    Creating /Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/site-packages/ijson.egg-link (link to .)
    Adding ijson 0.8.0 to easy-install.pth file
    error: /Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/site-packages/easy-install.pth: Permission denied
    Complete output from command /Library/Frameworks/Python.framework/Versions/2.6/Resources/Python.app/Contents/MacOS/Python -c "import setuptools; __file__='/Users/pnasrat/Development/pip/src/ijson/setup.py'; exec(compile(open(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" develop --no-deps:
    running develop

install_dir /Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/site-packages/
running egg_info
writing ijson.egg-info/PKG-INFO
writing top-level names to ijson.egg-info/top_level.txt
writing dependency_links to ijson.egg-info/dependency_links.txt
warning: manifest_maker: standard file '-c' not found
reading manifest file 'ijson.egg-info/SOURCES.txt'
reading manifest template 'MANIFEST.in'
writing manifest file 'ijson.egg-info/SOURCES.txt'
running build_ext

Creating /Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/site-packages/ijson.egg-link (link to .)
Adding ijson 0.8.0 to easy-install.pth file
Add unit tests for bazaar URL handling

Tested on 2.4.4, 2.7.1 and 3.2

nosetests tests.test_vcs_bazaar passes in each, full setup.py test gives:

2.4:

----------------------------------------------------------------------
Ran 107 tests in 167.345s

OK

2.7 fails 1 on Test freezing a mercurial clone

Script result: python setup.py develop
-- stderr: --------------------
warning: no files found matching '*.html' under directory 'docs'
warning: no previously-included files matching '*.txt' found under directory 'docs/build'
no previously-included directories found matching 'docs/build/html/_sources'

3.2

I got a bunch of failures, mostly environments (bzr, hg) and fragility I think.

----------------------------------------------------------------------
Ran 107 tests in 289.871s

FAILED (failures=5, errors=6, skipped=2)
Correct handling of default pathext case

Fixes #233

This adds tests which failed with existing code and then fixed with change.

Ran tests for test_basic in nose on 2.4.4, 2.7.1, 3.2

Ran full suite under 2.7

----------------------------------------------------------------------
Ran 107 tests in 172.398s
Fixed bug #266 and corrected some minor coding style problems nearby.
Merged pull request #267 from bradleyayers/develop.

Fixed bug #266 and corrected some minor coding style problems nearby.
Merged pull request #265 from pnasrat/issue-233-find_command-pathext.

Correct handling of default pathext case
Allow requirements.txt URLs to have egg= definitions.
Improve unittests to fix build failure

Extracted helper method and mock that for tests to avoid environment pollution.
Update requirements format documentation

Ensure new feature documented.
Merged pull request #268 from pnasrat/issue-233-find_command-pathext.

Improve unittests to fix build failure
Harden test against os.sep differences

Use os.path.join so that we don't have UNIX assumptions in test.
Merged pull request #269 from pnasrat/issue-233-find_command-pathext.

Harden test against os.sep differences
Fix broken build on windows

Less brittle path handling for URL construction

As discussed in comments on SHA:  f73385a more work may need to be done.
Merged pull request #270 from pnasrat/fix-relative-egg-windows.

Fix broken build on windows
added fix for edge case in pip.utils.find_command and moved `BadCommand` raise from `VersionControl.cmd` to `find_command`
adpated tests to expect BadCommand when command is not found via `find_command`
Fixed os.pathsep restore in tests
Merge branch 'issue-274-find_command_should_not_raise_attributeerror' into develop
added note to fixed issue #274