You are correct, if you had just two tables Book and Author you'd need a foreign key linking a book to it's author, but you wouldn't be able to have a book with multiple authors that way. So to have a book with multiple authors you've created a "cross-reference" table that says what authors are attached to a given book. When you do this you eliminate the need to have a foreign key in your Book table linking it to the Author table. That link moves into the "cross-reference" table and is maintained there. The only problem you run into in this situation is that you can add a book that has no authors. But this is an issue to be dealt with in your code, to prevent adding a book without selecting/adding an author(s) for that book.
What you have effectivly done by adding a "cross-reference" table is to decouple your Book table from your Author table. This is a good and bad thing, good because you have given yourself the ability to have multiple autors per book, bad because you can now remove an author while leaving the book in existance. You just ened up adding more work building your administrative tools, but you have better data to work with.
As for cascading updates and deletes: These are database tools (I don't believe that MYIASM tables incorporate yet) that take care of the administrative headache of tracking down all related items when you delete a parent item. All of this work can be replicated in a well designed and built administrative tool that will take care of deleting all child records when a parent is deleted, so that you don't have orphan records clogging up your database.