I don't think `hydrate` conveys the right meaning here.  This is probably `setData` or perhaps these should be broken up into two getter/setters on the sync object (vs. prototype).  Why are these async?  You don't do anything that requires a callback here.