Add a Gem::StubSpecification object to parse specification stublines
Write stubline out to gemspecs
Avoid loading all gemspecs

Parse out "stublines", where available, to retrieve the information
necessary to determine whether to activate a particular gemspec.

This requires sharing some code between Gem::Specification and
Gem::StubSpecification, so I created an abstract BasicSpecification
class to achieve this.
DRY up Specification._all/.stubs

Populate _all from stubs.
Memoize StubSpecification values

Prevents us parsing the stub line / building the objects on each call.
Merge pull request #435 from jonleighton/speed

Performance fix to avoid loading every gemspec