Dye-sensitized and polymeric solar cells