Cookbooks must have a category

It's an application requirement that cookbooks have a category so this
adds validation and a database constraint to ensure this requirement.
Merge pull request #205 from opscode/validate-cookbook-category

Cookbooks must have a category