User Repository Implementation - Part 1