Extract the matching logic.
Simplify the load/unload logic.
Simplify the reload logic (i.e. just trigger a re-match)