This book provides a unified presentation of a wealth of material that was previously restricted to research articles. In contrast to existing monographs, the approach of the book is analytic rather than algebraic, and tools such as sheaf cohomology, stratification theory of analytic varieties and symplectic geometry are used sparingly and introduced as required. The first half of the book is mainly pedagogical in intent, accessible to advanced graduate students and postdocs, while the second, more specialized part is intended as a reference for researchers.