creating a data access layer (uncompleted)