Harnessing plasmonics for solar cells