This book should be appropriate for use both as a text and as a reference. This book delivers a "ready-to-go" well-structured product to be employed in developing advanced courses. In this book the readers can find classical and new theoretical methods, open problems and new procedures.