protocols, etc, largely working.  Incremental check in whilst I muck
about with assignment.