dsl: Extend to use any type of matcher and helper functions to update files using one.