  We develop the theory of smooth principal bundles for a smooth group $G$,
using the framework of diffeological spaces. After giving new examples showing
why arbitrary principal bundles cannot be classified, we define $D$-numerable
bundles, the smooth analogs of numerable bundles from topology, and prove that
pulling back a $D$-numerable bundle along smoothly homotopic maps gives
isomorphic pullbacks. We then define smooth structures on Milnor's spaces $EG$
and $BG$, show that $EG \to BG$ is a $D$-numerable principal bundle, and prove
that it classifies all $D$-numerable principal bundles over any diffeological
space. We deduce analogous classification results for $D$-numerable
diffeological bundles and vector bundles.
