Don't require [] on unified_search parameter names

So that callers don't get a bad request error if they forget to use []
on some parameters, or if they use it on other parameters, strip off the
[] at the end of parameter names, and keep all values of parameters
passed to unified_search, presenting them as lists to the
SearchParameterParser.

This makes it easier to hand-construct queries, easier to call rummager
from languages other than Ruby, and should reduce the number of emails
we get from errbit due to incorrect use or omission of [] when
constructing parameters for calls to rummager.

Returns appropriate explanatory messages if parameters which should
occur at most once are repeated.

As a bonus, parameters such as "fields" or "debug" which take comma
separated lists of values can now be supplied in either that form, or as
repeated instances of the parameter.