Normal Subgroups in a p-group How can one prove the following claim:

Elementary abelian $p$- group of order $p^n$   have the maximal number of normal subgroups among all  $p$-groups of the same order.

Is is indeed true? 
Thanks in advance
 A: I'm going to prove a stronger result: An elementary abelian p-group has strictly more subgroups than any other group of the same size.  Since every subgroup of an abelian group is normal this answers the question.
Let $G$ be a $p$-group of size $p^n$ and fix some $0 \leq k \leq n$.  We're going to bound the number of subgroups $H \subset G$ with rank $k$.  Any such subgroup is generated by $k$ elements, but can be so generated in many different ways.  In fact, by the Burnside basis theorem, a $k$-element subset generates $H$ if and only if it is a basis for the $\mathbb{F}_p$ vector space $G/\Phi(G)$. So for each $H$ there are always at least $(p^k-1)(p^k-p)\ldots(p^k-p^{k-1})$ different choices giving the same $H$.  Thus the total number of $H$ of rank $k$ is at most 
$$\frac{(p^n-1)(p^n-p)\ldots(p^n-p^{k-1})}{(p^k-1)(p^k-p)\ldots(p^k-p^{k-1})}.$$
But that formula gives exactly the number of subgroups of rank $k$ of an elementary abelian group of size $p^n$, so the maximum possible number of subgroups of a $p$-group of given size is realized by an elementary abelian subgroup.
Now I haven't yet proved that elementary abelian p-groups are the only p-groups which achieve the maximum.  To that end consider the case $k=n$. To achieve the maximum there must be one subgroup of G with rank n, but this implies that G is elementary abelian.
