Fixes a problem in distinguishing between read and search. Instead of type-testing, we'll use duck typing