many improvements: can create books with all attributes.