Neural Circuits and the Architecture of Computation