Everything seems to look right, it compiles, and even runs, but the output I end up getting looks like this:

Book@6e00321, Book@5ced6f0d... etc

Why is it outputting that instead of the sorted...