These classes are non-threadsafe and have mutable fields for a
builder-like pattern; they should not be reused. Nonetheless, this was
happening in a few places, which seemed to not be causing problems, but
they may have just been hard to observe.
Ensure they are consistently used only once with a checkState in
QueryProcessor#query, and document this limitation.
Change-Id: I1c7d392b1094dcb562894108b652ee7750d98da4