Add save! to raise exception if things go wrong