A Tutorial on Quantum Error Correction