Improve exceptions
Support for custom failure message
Fix method name
Refactor Expectation::execute