Added Unit of Work pattern