Redmine#4096: filter(), grep(), every(), some(), none(), join(), min(), max(), mean(), variance() support for data containers

see https://cfengine.com/dev/issues/4096

Acceptance tests updated and improved to exercise all the aspects of the new support.

`JsonPrimitiveAsString` had to be factored out to avoid code duplication.

Documentation coming upon merge.