Pass example metadata to beforeEach/afterEach

Addresses issue #105, which essentially involves porting RSpec
example metadata to Quick. See: https://www.relishapp.com/rspec/rspec-core/docs/metadata/current-example

- Create ExampleMetadata class to encapsulate data on current
  executing example
- Add `beforeEach` and `afterEach` DSL that takes a closure with a metadata argument
- Add functional tests
@jeffh Actually I can't come up with a great way to test `afterEach` at all. I've punted this to #127. Would you prefer I include the `"calls afterEach"` test in the meantime, or should I remove it for now?