Quantum teleportation and communication