Initial push

This now passes the included tests:
```
Using Accessor#strict_set for specs
Run options:
  include {:elasticsearch=>true}
  exclude {:redis=>true, :socket=>true, :performance=>true, :broken=>true, :export_cypher=>true}

inputs/couchdb_changes
  CouchDB preparations
    checks that CouchDB responds
    will delete the CouchDB, if it exists
    should create a new CouchDB for testing
  CouchDB Initial Loading
    should create 10 documents in CouchDB
  Load first couchdb documents into elasticsearch
    agent(/Users/buh/tmp/logstash/vendor/plugins/jruby/1.9/gems/logstash-input-couchdb_changes-0.1.0/spec/inputs/couchdb_changes_spec.rb:86:in) runs
  Document Updates
    should update our spot-check docs
    Update our elasticsearch docs
      agent(/Users/buh/tmp/logstash/vendor/plugins/jruby/1.9/gems/logstash-input-couchdb_changes-0.1.0/spec/inputs/couchdb_changes_spec.rb:188:in) runs
  Document deletes
    should delete a doc
    Delete from elasticsearch docs
      agent(/Users/buh/tmp/logstash/vendor/plugins/jruby/1.9/gems/logstash-input-couchdb_changes-0.1.0/spec/inputs/couchdb_changes_spec.rb:264:in) runs
  HTTP Authentication
    should have no admin users
    should create an admin user
    should create a document
  insert new document into elasticsearch
    agent(/Users/buh/tmp/logstash/vendor/plugins/jruby/1.9/gems/logstash-input-couchdb_changes-0.1.0/spec/inputs/couchdb_changes_spec.rb:362:in) runs
  Cleanup after authentication test
    should delete the admin user
  SSL Connectivity
    should create a document (for SSL testing)
  pull document from CouchDB (via SSL) & insert into elasticsearch
    agent(/Users/buh/tmp/logstash/vendor/plugins/jruby/1.9/gems/logstash-input-couchdb_changes-0.1.0/spec/inputs/couchdb_changes_spec.rb:450:in) runs

Finished in 11.9 seconds
16 examples, 0 failures
```
don't you want this doc_as_upsert in @metadata? or just all of this stuff?