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.
Or maybe an actual pattern that would like to the scope-properties example:

{
  'match': '^\\s*@@.*$'
  'name': 'comment'
}