Split XML serialization and validation contracts.

@gradyward 
@wedaly 

Covers: 
* XML serialization changes
* Validation tweak (minor)
* Studio Mixin update
* Buncha tests

Continues to support reading in full XML configurations (for workbench, etc) but also allows serialization and a more granular level. 

Mixin now adheres to a JSON update contract rather than purely XML. 
I thought the validation errors were useful to be displayed to the front end?