Thin Film Solar Cells Using ZnO Nanowires, Organic Semiconductors and Quantum Dots