(#22043) Avoid double-escaping facts in the catalog retrieval request

On the agent, don't double escape, and pass in facts in a new
:facts_data option to distinguish it from the legacy double-escaped
facts found in :facts. On the master, accept both the
new format and the legacy double-escaped format.
(maint) remove duplicate spec test