do not mutate incoming params object
moved the clone up to the top of the clientAction.exec code path so that urlResolution can still delete params to help the query builder
reworked the client action tests to ensure that params are not being clobbered in several places, and adjusted the new test to make sure that index is not duplicated in the query params