Below, I present an outline of a proof of the first isomorphism theorem for groups. This is how I usually think of the first isomorphism theorem for ______________, but groups will get the points across. My question is whether there is any textbook which takes this basic approach.
Let $\pi: C \to L$ be a surjection. I like to think of the elements $l$ of $L$ as labels for the preimages $\pi^{-1}(l)$. So I call any surjection a "labeling function", and the codomain a "set of labels".
If $f: C \to R$ is function such that $\pi(x) = \pi(y) \implies f(x) = f(y)$ I say that "$f$ respects the labeling of $\pi$".
Theorem 1: $f$ factors uniquely through $\pi$.
For example if $C$ is the set of all candy bars in a store, $L$ is the set of all "types" of candy bars (mars, trix, heath, ...), $R$ is $\mathbb{R}$ and $f$ assigns to each candy bar its price, then it is plain that $f$ respects $\pi$'s labeling, and so I might as well have just assigned a price to each type of candy bar, rather than pricing each individual candy bar.
Theorem 2: If $\pi_1$ and $\pi_2$ respect each other's labeling, then the induced maps between their codomains are inverses. Hence the codomains are isomorphic.
For example if $\pi_1$ gives the English label of a candy bar and $\pi_2$ gives the Spanish label, then there is an obvious bijection induced between the set of English and Spanish labels (In fact, this is the principle which allows us to learn other languages).
Theorem 3 If $C$, $L$, and $R$ are groups, and $\pi$ and $f$ are homomorphisms, then the induced map from $L$ to $R$ is also a homomorphism.
This is just a couple lines of manipulation.
Theorem 4 If two surjective group homomorphisms respect each others labeling, then their codomains are isomorphic.
This is really a corollary of theorem 2 and 3
Observation: for a group homomorphism $\phi$, $\phi(a) = \phi(b) \Longleftrightarrow \phi(ab^{-1}) = 1$, i.e. $ab^{-1} \in Ker(\phi)$. Thus "$f$ respects $\pi$'s labeling" can be rephrased "$Ker(\pi) \subset Ker(f)$".
So a rephrasing of theorem 4 is
Theorem 4':Any two group surjective group homomoprhisms with the same kernel have isomorphic codomains
or observing that any homomorphism is a surjection onto its image, you can say
Theorem 4'': Any two group homomorphism with the same kernel have isomorphic images.
This is the first isomorphism theorem right? I have not mentioned normal subgroups, cosets, or factor groups. Those only come in as a construction to pick one representative of the collection of all images of homomorphisms having the same kernel, or when you want to start characterizing which subgroups of a group can be the kernel of some homomorphism.
I think that this very basic outline gets lost on students when they see the isomorphism theorem for the first time. Most textbooks defines normal subgroups, cosets, puts a group structure on the cosets, all without any kind of real motivation, and at the end the first isomorphism theorem seems kind of magical, and not at all natural. I know I thought it was magic when I first learned it. But the first isomorphism theorem does not seem surprising at all when you follow my sequence of theorems 1 through 4''.
So I ask: Is this approach taken by any textbook out there?