Working on this again.
Fixed all the merge conflicts