  Gamma Ray Bursts (GRBs) are notorious for their diversity. Yet, they have a
series of common features. The typical energy of their $\gamma$ rays is a
fraction of an MeV. The energy distributions are well described by a ``Band
spectrum'', with ``peak energies'' spanning a surprisingly narrow range. The
time structure of a GRB consists of pulses, superimposed or not, rising and
decreasing fast. The number of photons in a pulse, the pulses' widths and their
total energy vary within broad but given ranges. Within a pulse, the energy
spectrum softens with increasing time. The duration of a pulse decreases at
higher energies and its peak intensity shifts to earlier time. Many other
correlations between pairs of GRB observables have been identified. Last (and
based on one measured event!) the $\gamma$-ray polarization is very large. A
satisfactory theory of GRBs should naturally and very simply explain, among
others, all these facts. We show that the "cannonball" (CB) model does it. In
the CB model the process leading to the ejection of highly relativistic jetted
CBs in core-collapse supernova (SN) explosions is akin to the one observed in
quasars and microquasars. The prompt $\gamma$-ray emission --the GRB-- is
explained extremely well by inverse Compton scattering of light in the near
environment of the SN by the electrons in the CBs' plasma. We have previously
shown that the CB-model's description of GRB afterglows as synchrotron
radiation from ambient electrons --swept in and accelerated within the CBs-- is
also simple, universal and very successful. The only obstacle still separating
the CB model from a complete theory of GRBs is the theoretical understanding of
the CBs' ejection mechanism in SN explosions.
