Add language generator

This pull request adds support for language package generation via `apm init` as discussed in atom/atom#3129 with @kevinsawicki and @mischapeters.

I'm not sure if this option should support TextMate conversion in the same way that the previous two `init` options do. It should more or less be handled by the existing conversion routine for packages.

There's one rough edge that I'd like to address, but without adding a fair bit of code, I'm not sure if it's worth it; the name of the generated directory enforces the `language-` prefix, and for mostly everything that is fine. But I noticed that the convention is to leave the grammar files un-prefixed. Do we want to stick to that convention? It looks nicer, but perhaps not worth the extra complexity this introduces to `init.coffee`?

Please chime in with improvements to the examples, and what not.
That's when the prefixing starts to "hurt", because it will resolve to e.g. `scope.language-coffee-script` as opposed to `scope.coffee-script`. Otherwise I completely agree.

I can try to implement some mechanism for limiting where the prefixing takes if you'd like, or perhaps a new placeholder? Hmm...