Allow `knife cookbook site share` to omit category

Re-created against master from https://github.com/opscode/chef/pull/2198.

This adds a feature for knife to lookup the category on an existing cookbook. This enables uploading new versions of existing cookbooks with much less pain.

Fixes https://github.com/opscode/supermarket/issues/826 as well.
A few things here @martinb3:

1. Now that this is making category an optional parameter we should indicate it in the banner with `[ ... ]`.
2. We should have better wording here indicating that we were not able to get the category from the community site for the given cookbook and in order to share one should specify a category.