Commuting Self-Adjoint Operators Have Commuting Spectral Projections