Principles of Circuit Synthesis