Change RabbitMQ::Management to RabbitMQ::Manager class

This produces slightly-less-weird code, although it still is a bit janky. Now a
new manager is created for every instance of the resource, which is not ideal.
Correct keywords, types, and defaults for resources
Don't need to log the endpoint
Expose admin username and utilize to give permissions in rabbitmq_vhost
Only restart RabbitMQ at the necessary times.

Pretty much, that should be if the Erlang cookie changes, or if the environment
configuration or general RabbitMQ configuration change. Otherwise, it really
doesn't need to restart for almost any reason.
Give full permissions to admin for rabbitmq_binding.

Per the RabbitMQ access controls page, the ability to read on exchanges and
write on queues is necessary in order to create a binding.
Works on Chef 11.8, does not work on latest because of hashie
Merge pull request #8 from jakedavis/manager-as-class

Manager as class