Add partially functioning 'cancel' command to interrupt an ongoing 'read'.
Add completed 'cancel' functionality, with a unit test.  Add some strict type checking unit tests.