The Art of Combining Distance-Enhancing Constrained Codes with Parity-Check Codes for Data Storage Channels