Molecular engineering of carbazole functionalized ruthenium dyes for efficient dye-sensitized solar cells