message: Extract factory
diff: @@ -41,13 +41,15 @@ function createVisitor(
  // if a child would match the selection closer.
  if (hasChildWhichMatchesSelection(path, selection)) return;
  + onMatch(path, createMergeIfStatements(path));
  + }
  + };
  +}
  - const mergeIfStatements = t.hasAlternate(path)
  +function createMergeIfStatements(path: t.SelectablePath<t.IfStatement>) {
  + return t.hasAlternate(path)
  ? new MergeAlternateWithNestedIf(path)
  : new MergeConsequentWithNestedIf(path);
  - onMatch(path, mergeIfStatements);
  - }
  - };
  }
  class MergeConsequentWithNestedIf implements MergeIfStatements {
  