It looks like they assumed some of the results in their derivation which is circular logic.

No, the derivation on the fotonowy.pl page is not circular. This is another well known proof, originating with Einstein. One delicate issue in it is that in the original form of this thought experiment, the box is implicitly assumed to be perfectly rigid. This is a flaw, but it can be fixed: http://galileo.phys.virginia.edu/classes/252/mass_and_energy.html

It's not even circular. It already assumes E=mc^2 from the very beginning. After writing p=E/c you do not need a lengthy derivation, but just use p=mc to derive the final result. So the two equations are one step apart from being equivalent.

It's not even circular. It already assumes E=mc^2 from the very beginning. After writing p=E/c you do not need a lengthy derivation

No, p=E/c for electromagnetic waves follows directly from Maxwell's equations, so that had been known for 30 or 40 years before Einstein published SR in 1905. Here is an explanation: http://www.lightandmatter.com/html_books/genrel/ch01/ch01.html [Broken] (see subsection 1.5.7).

No, this is incorrect. You can't just plug v=c in to p=mv and expect it to be correct for a photon. p=mv is a nonrelativistic equation, which can't be expected to hold for light.

p=mv is always true. Also in relativity, since judging by the proof they use the relativistic mass. They use E=p/c, so E is the total energy. They derive E=mc^2 with the same variable E, so m must be the relativistic mass. In that case p=mv in both classical and relativistic theory.

p=mv is always true. Also in relativity, since judging by the proof they use the relativistic mass. They use E=p/c, so E is the total energy. They derive E=mc^2 with the same variable E, so m must be the relativistic mass. In that case p=mv in both classical and relativistic theory.

You've misunderstood the content of E=mc2.

[EDIT] Actually the link I gave above only proves that p is nonzero for an electromagnetic wave (which is inconsistent with the classical relation p=mv, since m=0 for light). By linearity and units we must have [itex]p=kE/c[/itex], where k is a unitless constant. For the proof that k=1, see this link: http://www.lightandmatter.com/html_books/0sn/ch11/ch11.html#Section11.6 [Broken] (subsection 11.6.2).