safe gen server - just keep its state on disc