Refactor classes to only have a single entry point class, to validate
params, and add rabbitmq::management.

These changes combined make sure that class parameters can only be set
on the main rabbitmq class and not overridden on subclasses.  As a
consequence of this we need to properly validate the parameters passed
in.

Rabbitmq::management is the post ::service class for providers that
require the service to be up.
Remove unrequired checks as empty strings evaluate to false.
Merge pull request #75 from apenney/plugins

Add rabbitmq::management and make rabbitmq single entry point.
Merge pull request #85 from DavidGriffith/master

config file is now at /etc/rabbitmq/rabbitmq.config
Use the version rather than responds.
Merge pull request #88 from apenney/command-test

Use the version rather than responds.
Config file was renamed.
Merge pull request #89 from apenney/system-fix-config

Config file was renamed.
Add confine block to ensure the providers don't work if the service
isn't up.
For some reason these don't raise as ExecutionError but as Error.
Patch up mistaken change.
Merge pull request #87 from apenney/confine_block

Add confine block to ensure the providers don't work if the service isn't up
Add SSL support
Replace confines with autorequire.

This replaces the confines block with an autorequire on the service. I
avoided doing this originally because it requires a single resource
rather than a class, but the confines block fails on first runs.
Merge pull request #33 from raphink/ssl

Add SSL support
Fix the wrapping around this fact.

Embarrassing this fact was completely broken, but because the spec tests
fake out the results of the fact it wasn't being picked up.
Add tests for this fact.
Merge pull request #97 from apenney/fixfact

Fix the wrapping around this fact.
Fix some problems related to clustering.

* Fix the broken template to parse correctly again!
* Fix the wipe-db dependency issue for the erlang cookie file.
Fix the tests by removing verify_contents.

Verify_contents is very fragile and can easily make you think
something is broken.  I replaced all references to it with
regular contain_file checks.

Avoid using {} in these regexs as it breaks rspec on 1.8.7.