Hetero Diels-Alder methodology in organic synthesis