Raise an exception when including a gem in itself

RubyGems would raise an exception when a gem included itself in the
files list, but it was not very helpful:

    ERROR:  While executing gem ...  (Gem::Package::TarWriter::FileOverflow)
        You tried to feed more data than fits in the file.

Now RubyGems reports a more-helpful exception that hints at what the
user should do to fix the problem:

    ERROR:  While executing gem ...  (Gem::InvalidSpecificationException)
        a-1 contains itself (a-1.gem), check your files list

Fixes #623