Plasmonic Catalysis: From Fundamentals to Applications