Improve save response handling.
Extract out virtual classes