Plasmonics: Fundamentals and Applications