update the `toThrowWith` matcher to accept a callback to run custom matchers against the thrown exception
Merge pull request #16 from vsavkin/implement_throw_where

update the `toThrowWith` matcher to accept a callback