Changed DefaultAggregateRootRepository to allow the actual instantiation of AggregateRoot objects to be changed (pulled Activator.CreateInstance call out into protected virtual method).
Added sub-class of DefaultAggregateRootRepository, FactoryBasedAggregateRootRepository, that takes a factory method as a parameter and uses this to construct AggregateRoot instances.
Added extension method for configuring FactoryBasedAggregateRootRepository.
Merge pull request #38 from kimbirkelund/master

AggregateRootRepository impl. that creates instances using a factory method