tests/harness.py: move replacements into Command

The replacements list in map_line applies to all results files,
handling both metadata and event replacements.

This change moves out the replacements list into the Command object
which defaults as empty (no replacements), and is specialized for
metadata and event commands.