Run after each hook even after exception

After each hooks are supposed to be run even when the example raises an
expectation exception, therefore the exception must be handled in
Example rather than ExampleGroup.
Remove redundant actual parameter

The types are already clear enough.
Validate member pointers before use
Add stub for spec reporter