Overloaded IRepository<T> to be IRepository<T,int>

This allows the use of IRepository<Contact> repos = new
InMemoryRepository<Contact>() instead of having to define
IRepository<Contact,int> even when using the default version of the
class where int isn't needed.

Fixes #41