Some other things to consider testing here:

* `expect().to receive_message_chain` -- this is a feature that the old syntax lacked, but I don't see a reason not to support it.  It's one thing I like about the new expect/allow + matcher system: we easily get feature parity for both message expectations and message allowances.  That said, if it's a bunch of work to get this to work, I'm not opposed to disallowing it....but I'd want a test here that documents that fact.  As it stands now, it's completely undocumented what happens when you use `expect` with `receive_message_chain`.
* `receive_message_chain("foo.bar.bazz")` -- this is one of the things `stub_chain` supports and we may as well support it.  I think it should "just work" but a test to confirm and document would be great.
* `receive_message_chain(:foo, :bar, :bazz => "return value")` -- this works for `stub_chain` (see `stub_chain_spec.rb`) and should either work here or be documented as not working.