Reorganize verifying double specs

The verifying double specs have gotten a bit unwieldy, as I noticed when interacting with them while working on #786, so I decided to reorganize them.

This also fixes some specific problems I ran into in the `verifying_message_expectation_spec.rb` (see the last commit).

I'm planning to cherry-pick this across to 3-1-maintenance as that will minimize merge conflicts for 3.1 backports as we continue to work in this area.