JIN-18 value() could return a number.
So set params.value as long as there is something there that is not a
plain object.
Merge fix for non-string values.
Add some tests that would have caught the reported bug.
Merge test for bug found by sourcecat.