changed RepositoryBase.cs to use generic constructor so implementations can work