Interface for generic repository implementation
IRepository just defines a simple interface with common repository methods and a typed argument.
Also it contains several extension methods that are commonly used with IRepository interface.
Nuget package can be obtained here https://www.nuget.org/packages/UkadGroup.IRepository