Ignoring shouldApplyAsManyMultiBookDiscountsAsAreAvailable for the moment; refactoring Book to be simpler and not have unused methods; making build.gradle actually run the tests