make the prepare and diff tasks support a single book