Graphical Reasoning in Compact Closed Categories for Quantum Computation