When dealing with multiple clients, there may be cases where some blocks need to be different but not others. When you have multiple blocks defined in a single file it makes managing a default/override arrangement difficult. I usually prefer individual source files and let the SFSP determine which block is inserted.