Only prepare test data once per test group.
Initialise test data in tests, not helpers.

To allow adding new tests with new data, test data should be generated alongside the tests. That way, we don't have one massive magic helper to do everything.
Fix bare-repo check.
Remove pointless check. Bah.
Remove pointless param.
Simplify single-version tests.
Be more honest with naming.
Handle cookbooks with evaluated metadata.

Cookbooks' metadata, as stored in [99% of git repos](https://github.com/opscode-cookbooks), are `.rb` files that can contain references to other files within the repo (typically `README.md` or `VERSION` files).

When Chef server is serving cookbooks, these Ruby-time dependencies are handled by `knife` (i.e. when the cookbook is uploaded to the server), so the server never has to deal with them. We don't have that luxury, though, because we're running from the original source.