code: func New(authToken string, expr string,
  	callback func(searchResults string),
  	cleanup func()) *js.Object {
  	if err := checkZoomExpr(expr); err != nil {
  		dom.GetWindow().Alert(fmt.Sprintf("%v", err))
  		return nil
  	}
  	expr = ShiftZoomPredicate(expr)
  	return js.MakeWrapper(&Query{
  		AuthToken: authToken,
  		Expr:      expr,
  		Callback:  callback,
  		Cleanup:   cleanup,
  		Limit:     50,
  	})
  }
docs: // New returns a new query as a javascript object, or nil if expr violates the
  // rules about the zoom (map:) predicate. See SetZoom for the rules.