* chore: apply exec rules after removal and use CWindowRule
* refactor: unregister exec rules after applying them
Remove the unused toRemove vector and defer unregistering exec rules
until after applyStaticRule/applyDynamicRule so exec rules are applied
before being removed from the rule engine.