Module theory: Composition sequences I don't quite understand a proof of a theorem in module theory. I will give it first, then ask a couple of questions.

Theorem: Let $M$ be a left $R$-module.
If 
$0 \subset M_1 \subset M_2 \subset\dots \subset M_k = M$
$0 \subset N_1 \subset N_2 \subset\dots \subset N_l = M$
are composition sequences of $M$, then $k=l$ and the simple quotients
  are unique up to isomorphism and order

Proof my book provides:
Choose $r$ minimal such that $N_1 \subset M_r$ en consider the $R$-module $M_{r-1} \cap N_1 \subset N_1$. Because $N_1$ is simple, there are two possibilities:
$M_{r-1} \cap N_1 = N_1$ or $M_{r-1} \cap N_1 =0$. The first possibility is impossible, as it would contradict the minimality of $r$. Hence $M_{r-1} \cap N_1 = 0$ and $M_{r-1} + N_1 = M_{r-1} \oplus N_1$
Because $M_{r-1} \subset M_{r-1} \oplus N_1 \subset M_r$ and $N_1 \neq 0$, it follows that $M_{r-1} \oplus N_1 = M_r$
Hence: $M_r/M_{r-1} \cong N_1$
So, we can find the following composition sequences for $M/N_1:$
$$0 = N_1/N_1 \subset M_1 + N_1/N_1 \subset\dots \subset M_{r-1}+N_1/N_1 = M_r/N_1 \subset M_{r+1}/N_1 \subset \dots\subset M_k/N_1 = M/N_1$$
$$0 \subset N_2/N_1 \subset N_3/N_1 \subset \dots \subset N_l/N_1$$
and we repeat this inductively $\square$

Questions:
Why is 
$$0 = N_1/N_1 \subset M_1 + N_1/N_1 \subset\dots \subset
 M_{r-1}+N_1/N_1 = M_r/N_1 \subset M_{r+1}/N_1 \subset \dots\subset
 M_k/N_1 = M/N_1$$
a composition sequence? I can see that the other one is a composition
  sequence, I can also see that the inclusions are proper.
While I understand every single step in the proof (besides the
  question I just asked), I can't see how this proof proves that $k=l$
  and the that the simple quotients are unique. Can someone explain
  this?

 A: Question : why is $0 = N_1/N_1 \subset M_1 + N_1/N_1 \subset\dots \subset
 M_{r-1}+N_1/N_1 = M_r/N_1 \subset M_{r+1}/N_1 \subset \dots\subset
 M_k/N_1 = M/N_1$ a composition sequence ?
Answer :  Because of the third isomorphism theorem.
If you put $f(X)=X/N_1$, the third isomorphism theorem tells you that the two quotients $f(M_{k+1})/f(M_k)$ and $M_{k+1}/M_k$ are isomorphic.
Question : how does this prove that $k=l$ ?
Answer : Use induction on $m=\mathsf{max}(k,l)$. When $m=1$, $M$ is simple so $k=l=1$
and we are done. Suppose now that $m>1$, and suppose that the result is true for
$m-1$. Consider two composition sequences for $M$, wth lengths $k$ and $l$ as in the OP. Applying the contruction in your book, you get two composition sequences
for $M/N_1$, with lengths $k-1$ and $l-1$. By the induction hypothesis, $k-1=l-1$,
so $k=l$ as wished.
Question : how does this prove that the simple quotients are unique ?
Answer :  Denote by $Q(S)$ the set of all quotients in a composition sequence $S$. Let $S_1=(0 \subset M_1 \subset M_2 \subset\dots \subset M_k = M)$ and $S_2=(0 \subset N_1 \subset N_2 \subset\dots \subset N_l = M)$ be as in the OP.
The construction you explained shows that $N_1\in Q(S_1)$ (indeed, $N_1$ is $M_r/M_{r-1}$). The second iteration of this procedure will show that $N_2/N_1\in Q(S_1)$
(here again, you'll need the third isomorphism theorem to move back and forth between
quotients). In the end, one sees that every $N_k/N_{k-1}$ is in $Q(S_1)$, in other words $Q(S_2) \subseteq Q(S_1)$. Making a symmetric construction which interchanges $M$ and $N$, you get $Q(S_1) \subseteq Q(S_2)$ and finally $Q(S_1)= Q(S_2)$ as wished.
