Ensure query.toString() is always decoded.

I've seen it come out encoded in real-world usage - sometimes keys and values
can get doulbe-encoded.