Merge pull request #3137 from TimMoore/1-7-stable

Fix handling for sources with basic auth
set dependency names before any specs are fetched

refs #3134
Revert "set dependency names before any specs are fetched"

Turns out that broke spec/install/gems/platform_spec.rb:183.
Oops.

This reverts commit 4623850a06d4e4e74beca832aca7009a657569ed.
refactor fetcher URI to reduce parsing
update specs for RSpec 3 changes
extract Definition#source_requirements
refactor unmet_dependency_names
move all Rubygems source ensures into fetcher
use Index#build
extract Rubygems#fetcher
remove fetch_specs
nooo don’t break memoization
normalise unmet_deps across all Sources
Version 1.7.1.pre with changelog
Depend on RSpec 3 final
Where did that space come from
restore 1.8.7-compatibility

I will be very excited when we can drop 1.8 and 1.9 and use all the new
fancy Ruby stuffs.
Sort index search results across all sources.