See email. This is level two, not done yet, but with significant
progress. Also a minor addition to Switch to create a getter for the
contacted variable.