Polyviologen as the charge-storage electrode of an aqueous electrolyte- and organic-based dye-sensitized solar cell