Quantum Computation, Information and Foundations