Surfactant-assisted nanocrystal filling of TiO2 nanotube arrays for dye-sensitized solar cells with improved performance