Theory of Orthogonal Designs