'Return a list of e-books on the device.
:param oncard:  If \'carda\' or \'cardb\' return a list of e-books on the
specific storage card, otherwise return list of e-books
in main memory of device. If a card is specified and no
books are on the card return empty list.
:return: A BookList.'

def books(self, oncard=None, end_session=True):

    raise NotImplementedError()
