reader_interrupted() should only be called on the main thread. fixes #537
fix comments on #516. Split `reader_interrupted` into a `reader_interrupted` and a `reader_reading_interrupted`