[Analyzer] Ensure external sources are downloaded when needed

Closes https://github.com/CocoaPods/CocoaPods/issues/2494.
[Gemspec] Require Resolver
[Resolver] Start using the resolver gem!
[Resolver] Add rudimentary lockfile handling, equivalent to the old behavior
[ResolverSpec] Disable spec that really belongs in the Analyzer
[Resolver] Restore support for HEAD pods
[Resolver] Return lazy specifications in Set#all_specifications
[Resolver] Allow LazySpecs to stay unrealized for longer
[Resolver] Sort dependencies by number of possibilities, improving performance exponentially on large Podfiles
[Resolver] Verify platform compatability
[Resolver] Move vertex method into Resolver gem
[Specs] Update to match update in master repo submodule
[Resolver] Only make the ResolverError include InformativeError inside a command
[Resolver] Delete dead code
[ResolverSpec] Add a basic conflict spec that the old resolver failed