* Support away_mode as permanent hold and hold_mode as temporary hold. * Add comments to explain code better. Remove indefinite hold preference to be consistent with 'away_mode'.