Contract based id provisioning while testing

- Scenario is no longer static (makes extending it easier - you'll have
to type 4 more chars though).
- Showing off how you could extend AggregateSource.Testing classes with
your own overloads that leverage your event base class or interface to
get the aggregate id those events are associated with.