Refactor merge and mergestate code

Closed Pulkit Goyal requested to merge topic/default/mergestate-refactor into branch/default

This series refactors mergestate and related merge code.

Merge request reports