Add missing "Gem" to typo name

This properly restores backward compatibility
Begin implementing Gemfile.lock support

Currently up to basic Gemfile.lock output.
Refactor stub gems into spec_fetcher helper
Add requirements to lock file DEPENDENCIES
Handle requirements in lockfile output

Non-default requirements must be included in the GEM section.
Add directory to the Gem::Source::Vendor

Now a vendor gem knows where it came from.  This will allow the lockfile
to also record where the gem came from for persistence across
resolution.
Support path: gems in lockfile

I'm unsure what the "!" is supposed to mean in the dependencies section,
but my choice seems correct.
Dependencies and specs are ordered in a lockfile
Dependencies of specs are ordered in a lockfile
Improve documentation of Requirement

Remove a bunch of FIX comments that weren't fixed, but were breaking
documentation.
Remove FIX comments

Some of these were creating bogus documentation
Add Gem::Requirement#concat

This does not check for compatibility requirements.
Combine dependencies in RequestSet

If the user gives incompatible requirements the resolver will sort this
out for us.
Ensure incompatible dependencies cause exceptions
Remove extra whitespace
Prevent duplicate sources for the same gem

The bundler Gemfile tests indicate this is not allowed.  Now we raise an
ArgumentError (which is probably not specific enough).
Reduce indentation in gem_path
Add platform to lockfile

I think this is right, it seems to be RUBY unless there's a gem with a
platform.
Extract add_PATH from Lockfile#to_s
Extract add_GEM from Lockfile#to_s