true repository / unit of work pattern

also re-added entity framework