Allow requirements file to specify PyPi repos other than the official one.

If you have an internal one, you can add

--extra-index-url=http://your-pypi.com/simple

Or provide "extra-index-url" command line argument at runtime.

The compiled requirements.txt file will include this statement so installation
goes smoothly. This additional repo will also be used to resolve any dependencies.
Check for duplicate extra index urls.

If there's multiple requirements files with same extra PyPi,
check if it has already been found somewhere else so it
doesn't get added to the compiled file more than once.
Correct format of extra-index-url parameter

Specifying the option in the requirements file with an equals '--extra-index-url=blah' works, but is not the documented format. The documented format actually is just a space between the option and value. The parser has been updated to accept both, but output the proper format.
Merge pull request #82 from beeftornado/beeftornado

Allow requirements file to specify PyPi repos other than the official one
Update .gitignore.
Tidy up a few little things.
Fix tox.ini.
Fix PEP8 issues.
Assume no setup.py, in which case we assume no dependencies.
Fix potential undefined local variable.
Add -i / --include-sources flag, to write source traces into output file.
Whoops. Write out the complete pinned spec, not just the name.
Key by lowercased spec names.

This makes sure case differences in sources do not lead to bugs in
compiles outputs (duplicate entries are considered bugs by pip, and lead
to failure).
Fix regex.