final rough draft

Known issues: Validation doesn't reset when switching to Create.
Calling $setPristine() on a child scope is quite annoying.

I planned on writing unit tests for the first time in my life (hence the
dependency injection) but that's not going to happen.  There are two
different data stores, though!

Not 100% happy with the ModelState validation - but it's the best way
I've thought of to marry DataAnnotation/IValidatableObject validation
and angular so far.