Subversion failes with "option ':command' is not a valid option for Mixlib::ShellOut"

Improper use of `shell_out!`, which uses Mixlib
Fixed #2633
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).
Use a real error class when metadata is not found
Clean up knife cookbook site install tests
Update CHANGELOG for #2630
Add unit tests for cookbook site install #preferred_metadata
Merge pull request #2634 from BackSlasher/repair-subversion-command

Subversion failes with "option ':command' is not a valid option for Mixlib::ShellOut"
Contribution information for https://github.com/opscode/chef/pull/2634.
Merge pull request #2645 from opscode/sersut/contrib-2634

Contribution information for https://github.com/opscode/chef/pull/2634.
Added contributor for Issue 2625
Merge pull request #2642 from opscode/btm/site_install_json

knife cookbook site install json support w/tests
Contribution information for https://github.com/opscode/chef/pull/2642.
Merge pull request #2650 from opscode/sersut/contrib-json

Contribution information for https://github.com/opscode/chef/pull/2642.
fix apt default_release attribute broken in 12.0

the apt provider attempts to check if it has a provider that
responds to :default_release (i.e. a real apt_package resource) via
if the provider attribute is explicitly set or not, which is relying
on a side-effect which broke in 12.0.  the correct behavior is just
to duck-type the new_resource object and see if it
respond_to?(:default_release) and then use it if it does.

Also the unit tests were not testing the apt_provider against both the
package and apt_package resources.  Added some hacky spec code (which
needs a cleanup) to at least exercise the use cases.
add CHANGELOG
Merge pull request #2640 from opscode/lcg/apt-provider-release-option

fix apt default_release attribute broken in 12.0
Contribution info for https://github.com/opscode/chef/pull/2658.

Conflicts:
	CHANGELOG.md
Fix bug where error parser what-if output causes resource to be considered converged.

We now fall back to assuming the resource is not converged if we cannot parse
information about a dsc resource.
Don't care how many timess you warn, just do it
Rename Chef::Exceptions::LCMParserException to Chef::Exceptions::LCMParser