All tests pass

The old function_expansion code looped forever because I was expanding
the uri_qq/8 term into another uri_qq/8 term, which was in turn
expanded, forever.  I changed the quasiquoter to generate a uri_func/1
term wrapping the uri_qq/8 term.  Now function_expansion can operate
on the former without infinite loops.

After correcting a mistaken test case, all tests pass.

Unfortunately, SWI-Prolog produces singleton variable warnings without
regard to quasiquotation expansion.

There's a lot that I dislike about this code, but at least it works as
desired.
Test interpolation for integer query params

I want to make sure that users can interpolate both atoms and
integers.