Partial, rewrite of sync, need to look at delete handling