add --pattern flag to cookbook generator

this will accept environment, application, library, or wrapper as an argument
and it will generate the necessary files for that cookbook pattern
ensure init generator options are available from cli
wrapper cookbooks need a default recipe
rename TYPES constant to PATTERNS
add pkg directory to gitignore
add docs and move `--pattern` flag up to BaseGenerator
Merge pull request #955 from berkshelf/pattern-generator

Add `--type` flag to `berks cookbook` command
nope nope nope, nope, no. This is so fucking dangerous, no
use a static string for long_description in generated metadata files
bump test-kitchen dev dependency and update generator
Merge pull request #1114 from berkshelf/fucking-dangerous

Nope nope nope, nope, no. This is so fucking dangerous, no.
update generated changelog to encourage a specific format
fix failing test from last commit
Merge pull request #1115 from berkshelf/sethvargo/transitive_update

Support transitive update
Add new lifecycle features for moving dependencies around
Force unlock dependencies in Lockfile#reduce!

Previously, I attempted to write a half-assed algorithm for
recalculating the lockfile when dependencies were removed. This was
because I wanted to avoid talking to the resolver at all costs (since it
was slower than <some analogy of a slow thing here>). However, it had
bugs. A LOT of bugs. And we now have a better resolver. I could have
rewritten Lockfile#reduce!, but now we just force-unlock elements from
the graph, thus throwing it into an untrustable state. That sounds bad,
but it is actually a good thing.

By force removing elements from the graph, we ensure that a new resolver
object will be created. BUT, we still read from the graph. So this means
that existing locks will still be used.

This commit also added more debugging log output to Lockfile#reduce! by
proxy, since I needed it. It is helpful.