Allowing tornado gen

This pull request also includes my previous one (sorry for it, I messed things up, should be using branches from the start).

If you accept this one, there's no need to accept the previous. If you accept the previous first, let me know and I'll resubmit the pull request.

It also includes putting and deleting documents like this:

    # allows users to create new documents in index "test" with type "document"
    response = yield self.es_connection.put("test", "document", doc_id, {
        "test": "document",
        "other": "property"
    })

    # deletes the document created above
    response = yield self.es_connection.delete("test", "document", doc_id)

It's not clear to me how to procede with the documentation for the project (#2), though.