The Synthesis of Heterocycles Using Cascade Chemistry