  We review the Dirac formalism for dealing with constraints in a canonical
Hamiltonian formulation and discuss gauge freedom and display constraints for
gauge theories in a general context. We introduce the Dirac bracket and show
that it provides a consistent method to remove any gauge freedom present. We
discuss stability in evolution of gauge theories and show that fixing all gauge
freedom is sufficient to ensure well-posedness for a large class of gauge
theories. Electrodynamics provides examples of the methods outlined for general
gauge theories. Future work will apply the formalism, and results derived here,
to General Relativity.
