lists: extracting lively.morphic.tools.FilterableList from code search to make it reusable