Pkg.generate features

I am working to close #4908, #8267, #8144. This should also supplant #7809.

I have added the following licenses for #4908, #7809:
* GPLv2 
* LGPLv2
* CC0

This also publicizes the licenses better when `Pkg.generate()`, `Pkg.generate("MyPkg")`, or `Pkg.generate("MyPkg", "WithAnInvalidLicense")` is called.
 
Generation now initializes with a .gitignore for `*.jl.cov`, `*.jl.mem`.

Possibly contentious:
I've added code coverage by default into the .travis.yml file and the corresponding badge to the readme. Code coverage has helped improve my code quality and helps significantly with debugging. I am not sure how people feel about promoting coveralls.io by default, but it seems to be the best free option.
Yes, this should be: `[![Coverage Status](https://img.shields.io/coveralls/$user/$pkg.jl.svg)](https://coveralls.io/r/$user/$pkg.jl?branch=master)`