(PUP-1885) Stringify ignores for file serving

Commit 6353ebbbc0d3804e30e9961559b01c9a69a74a93 introduced non-yaml
encoding for arrays of HTTP parameters. Unfortunately this also exposed
those values to the type conversion that is done to parameters in the
HTTP layer, which caused an ignore for a file matching "0" to be turned
into the number 0. The file serving code didn't handle getting
non-string ignore patterns and would then raise an error.

This changes the file server to stringify all of the parameters that it
recieves for ignores, which solves both the number problem as well as a
related one for booleans.

An alternative solution to this would have been to change the HTTP
handler so that it didn't try to convert arrays of values. I didn't go
for that because it would have caused the parameter handling to be
inconsistent.
(Maint) Remove some duplication in tests

This duplication actually bit me when writing the test for PUP-1885.
Merge pull request #2419 from zaphod42/issues/master/pup-1885-error-with-non-string-ignores

(PUP-1885) Stringify ignores for file serving