refactored model for LibrarySearch, still open to use fetch instead of q call