Build a query-string.
Given a QUERY in the form:
'((key1 val1)
(key2 val2)
(key3 val1 val2)
(key4)
(key5 ""))
(This is the same format as produced by `url-parse-query-string')
This will return a string
"key1=val1&key2=val2&key3=val1&key3=val2&key4&key5". Keys may
be strings or symbols; if they are symbols, the symbol name will
be used.
When SEMICOLONS is given, the separator will be ";".
When KEEP-EMPTY is given, empty values will show as "key="
instead of just "key" as in the example above.