Break off initialization of the ._parameters array and ._param_metrics into a separate method; this might prove useful later.
Improve indexing of CompoundModel classes so that submodels can also be looked up by their names.  Now we also need to add this capability for CompoundModel instances.
On second thought, I think this approach is more useful.  Rather than maintain a separate name->submodel mapping just maintain an ordered tuple of the names of the submodels (with ordering corresponding to their order in the ._submodels list).  In particular I think this will prove more useful for compound model instances
Gets the .submodel_names attribute working on compound model instances as well (though indexing does not work yet on instances; that's going to take some more reworking
Fix minor formatting issue for Model.__repr__
Fixed the order of operators and added several tests for expression formatting
Adds some tests inspired by some of the tests for the old SerialCompositeModel class.  The same use cases are easy to implement under the new framework.
Prototypes for Mapping and Identity models, useful for building compound models that need to do things like pass through inputs/outputs unmodified, or reorder/drop outputs.