A comprehensive overview of the latest progress trends and the current state of this important and rapidly expanding field. Clearly and logically structured the first part explores the fundamentals while the second adopts a practical approach discussing various applications.