Self-assembled polyaniline nanotubes and nanoribbons/titanium dioxide nanocomposites