added generic unit of work + dbcontext extensions. To do: add, edit, delete properly, disposing of resources for unit of work and repository. add unit test.