How would you design a system that can recover from a power failure without losing critical data for Cruise?