make tests more flexible by checking for object names instead of bitmasks
rewrite replacements in terms of 'bits to clear' and 'bits to set'
use inplance operations for clarity
build CellReplacement Set/Clear bitmasks directly
fix bug where invalidated matches weren't properly skipped