A dictionary of Position objects keyed by book_id.
        :return:

def positions_by_book(self):
        """
        A dictionary of Position objects keyed by book_id.
        :return:
        """
        positions = None
        for book in self.books():
            positions[book] = book.positions()