Quantum Graphs And Their Spectra