User Data Access Object
Revert "User Data Access Object"

This reverts commit 6a3d8ea2d1c08ea8d62ee263cea525886814fabb.
Revert "Revert "User Data Access Object""

This reverts commit 44961c330485e19ae4dabcad134c4aef12a49dd8.