Checkpoint -- this model matches the spec almost exactly
First cut at the complete spec