be76d63ef6
Formerly, the books.xml file was read in multiple times, even if it hadn't changed at all. And since books.xml can contain multiple books, each of which potentially contains multiple reports, each with multiple options, all of which get parsed every time the books.xml file gets read in, the process potentially can take a while. Similarly the books.xml file was written out every time a book was added or deleted, even if the book report continued to be run, with potentially more changes being made. So it's changed so that the books.xml file is only read in once, and written out once, and only then if it needs it.