Eliminate unnecessary conflicts
Fixes the following issues:
* If you change one model parent.child value (e.g. constraints.arch) in the inspector and then set a model parent.child value (e.g., constaints.cpu-cores) in the db, you will get an unnecessary conflict on the arch.
* resetDOMToModel could not clear conflicts.
I also added a lot of comments, and a couple of tests for pre-existing functionality that I broke during my refactoring.
R=rharding, benjamin.saller
CC=
https://codereview.appspot.com/13340047