Software For Quantum Computers