Allow knife to install cookbooks with metadata.json

Previously `knife cookbook site install` would only install cookbooks that have a metadata.rb. This has a number of problems, mainly that compiled metadata is supported elsewhere in Chef.

This commit adds support for parsing the metadata.json, even though the metadata.rb is still preferred (since that's what the rest of Chef does).

Refs: https://github.com/sethvargo/stove/pull/59

/cc @nathenharvey 
There is [MetadataNotValid](https://github.com/opscode/chef/blob/2f942406d9bb64335586cbca982dfbe9d36c0a74/lib/chef/exceptions.rb#L144) but I think we should create `MetadataMissing` right next to that.