Revert 66226f2..8d0eafb

This rolls back to commit 66226f20eb2e4e5a15a25bf5489245609a18ef16.
Revert "Revert 66226f2..8d0eafb"

This reverts commit ddd67bba1130f0dc69e2510fc20bd260869dcde0.
Implements Background Fetch
Updates Data Model