Feature/provisioner multitenant

first version of the multitenant provisioner master, required for #212 .  a couple high-level items:
* Docs will be added (working on those now)
* See the diff for some minor changes to the existing provisioner (now: worker)
* For simplicity, added this under provisioner/multitenant folder, and the ruby calls up to '../daemon/provisioner' for the worker.  There will be a followup PR to restructure the provisioner directory.  
* try it out, switch to the branch and from ``provisioner/multitenant`` run:
   * ``./bin/provisioner --uri http://localhost:55054`` (-h for other options, default binding is 0.0.0.0:55056)
   * add workers: ``./spec/tenant_worker_request.rb mytenant 3``
   * delete tenant: ``curl -v -X DELETE http://localhost:55056/v1/tenants/mytenant``
   * get heartbeat stats: ``curl http://localhost:55056/heartbeat``
* basic rspec testing, run rake
* rubocop is happy (2 minor offenses which will be addressed when we iron out the plugin data stuff)



+1 

Can be at trace level

------------

"I’ve learned that I still have a lot to learn. I’ve learned that people will forget what you said, people will forget what you did, but people will never forget how you made them feel" - Maya Angelou

Random auto-corrects and typos are my special gift to you. When I forward they are from others. 

> On Jul 24, 2014, at 7:42 PM, Chris Gianelloni <notifications@github.com> wrote:
> 
> In provisioner/multitenant/lib/provisioner/provisioner.rb:
> 
> > +        }
> > +      }
> > +    end
> > +
> > +    def spawn_heartbeat_thread
> > +      @heartbeat_thread = Thread.new {
> > +        log.info "starting heartbeat thread"
> > +        register_with_server
> > +        loop {
> > +          uri = "#{@server_uri}/v1/provisioners/#{provisioner_id}/heartbeat"
> > +          begin
> > +            log.debug "sending heartbeat to #{uri}"
> > +            json = heartbeat.to_json
> > +            resp = RestClient.post("#{uri}", json, :'X-Loom-UserID' => "admin")
> > +            if(resp.code == 200)
> > +              log.debug "Successfully sent heartbeat"
> Do we need heartbeats in debug log? I could see that filling up the logs quite quickly with (mostly) useless information.
> 
> —
> Reply to this email directly or view it on GitHub.