Add missing specs for present tense predicates.
Improve robustness of spec.

`expect { }.to raise_error` is prone to false positives since
it could fail with any kind of error, not just the kind of error
we expect.
Make `be_xyz` matchers support do...end blocks.

Fixes #137.
Merge pull request #477 from rspec/fix-do-end-blocks

Fix do end blocks