Nimble: add Raise matcher

Quick and dirty Raise matcher implementation.

- Matcher defines a matchClosure method, which
  matcher subclasses may override in order to
  define matching behavior against closures.
- ClosureExpectation defines a evaluateClosure method. Matchers
  extending ClosureExpectation classes to include matching methods, such
  as "raise" or "equal", may choose to use evaluateClosure instead of
  the standard evaluate. This passes the matcher a closure.

Overall, the architecture added in this commit is suboptimal, but it
works for now.
Raise: match on name, reason, and userInfo

Fixes #8.