Add Chef::Org model class

Chef Server 12 added multi-tenancy to the open source Chef Server. An
organization is the Chef Servers name for a tenant.  The Chef::Org
class provides a model of an organization to facilitate writting knife
commands that can interact with (create, destroy, list) Chef
organizations.

This implementation is copied directly from knife-opc, the knife
plugin currently in use by chef-server-ctl:

  https://github.com/opscode/knife-opc
yeah i think this is straight copypasta out of what we do elsewhere.   the problem is that create is POST and update is PUT and they are strict so that if you create something that is already created that is an error, if you update something that isn't created that is an error.  so create_or_update always involves doing one and then rescuing and doing the other.  stock REST/HTTP verb meanings -- and this is the typical result.  SQL is similar and every ORM out there has some create_or_update sauce to sprinkle over SQL to do this for you.