code: public BasicDBObjectBuilder push(final String key) {
          BasicDBObject o = new BasicDBObject();
          _cur().put(key, o);
          _stack.addLast(o);
          return this;
      }
docs: Creates an new empty object and inserts it into the current object with the given key. The new child object becomes the active one.
  
  @param key the field name
  @return {@code this} so calls can be chained