Added asynchronous unit of work and repository patterns