Devoncarew resolve conflicts

Not yet ready for review - @gaurave, I have some TODOs here where I'll need some implementation to call, either at the scm layer or in the git layer underneath it.