Greatly simplify Management library

There's too much indirection all in the name of trying to reuse a client
connection. I don't that was even accomplished, so we just had indirection for
no reason. Now, it'll explicitly create a new API client for each Chef
resource. Hopefully this resolves the bug wherein passed-in values were not
being propagated to the client, but I'll test that before merging.

This should allow more obvious usage of the Management library, which has been
re-made into a module because a class was worthless.

All of the providers have been updated to reflect this scheme. I think we're
basically running into a weird compile/converge time error, where the class
initialize method is calculated beforehand, meaning node[:rabbitmq] is empty
and therefore no matter when you create the resource, it just falls back onto
the default value. Don't have a clear path forward on that yet.