Fundamentals of Quantum Information: Quantum Computation, Communication, Decoherence and All That (Lecture Notes in Physics)