Banking system crises are complex events that in a short span of time can inflict extensive damage to banks themselves and to the external economy. The crisis literature has so far identified a number of distinct effects or channels that can propagate distress contagiously both directly within the banking network itself and indirectly, between the network and the external economy. These contagious effects, and the potential events that trigger these effects, can explain most aspects of past crises, and are thought to be likely to dominate future financial crises. Since the current international financial regulatory regime based on the Basel III Accord does a good job of ensuring that banks are resilient to such contagion effects taken one at a time, systemic risk theorists increasingly understand that future crises are likely to be dominated by the spillovers between distinct contagion channels. The present paper aims to provide a model for systemic risk that is comprehensive enough to include the important contagion channels identified in the literature. In such a model one can hope to understand the dangerous spillover effects that are expected to dominate future crises. To rein in the number and complexity of the modelling assumptions, two requirements are imposed, neither of which is yet well-known or established in the main stream of systemic risk research. The first, called stock-flow consistency, demands that the financial system follows a rigorous set of rules based on accounting principles. The second requirement, called asset-liability symmetry, implies that every proposed contagion channel has a dual channel obtained by interchanging assets and liabilities, and that these dual channel pairs have a symmetric mathematical representation.