Add Data Layer schedule #upsert function
Also refactored #fetch function for easier readability, similar to how #upsert was implemented
Closes #3