Fix: only add books if new