Redo everything to be based on content providers and sync framework