MS-PL (definition) is much more liberal compared to GPL. Not very identical, but MS-PL more like Apache license, where in the code is given as-is. MS-PL original software doesn't mind whether a derived software is distributed as source or binary or even commercial. Hence, if you take MS-PL code, modify (whether trivial or with refactoring) you can publish it through GPL
However, it is clear that you cannot remove MS-PL license notice. And hence, the GPL license granted by you essentially becomes a dual license. Since MS-PL already permits other people to include your work in commerical, GPL's provided protection will no longer hold! Yes, your license will no longer be any stronger than the weakest of all - the MS-PL.
One more ref: http://www.cmswire.com/cms/web-development/taking-a-closer-look-at-microsofts-mspl-open-source-license-004248.php
There is a general opinion, [ Is it illegal to rewrite every line of an open source project in a slightly different way, and use it in a closed source project? ] that even if you modify every line of code, it is still a derived work; hence you cannot really rule out MS-PL terms.
Oops! I just got off the tangent to read the question properly.
Basically, assuming that GPL is common across all three generations. This is simple. What GPL requires is that for every file copyright claim needs to be included with mention of GPL. See GPL Howto it reads following:
Whichever license you plan to use, the process involves adding two
elements to each source file of your program: a copyright notice (such
as “Copyright 1999 Terry Jones”), and a statement of copying
permission, saying that the program is distributed under the terms of
the GNU General Public License (or the Lesser GPL).
So there needs to be at least one copyright claim attached to every source file without which you cannot attach GPL (or any license) to it!
Now, the real question in your case is,
if you have really modified a file heavily or almost re-written but do
not include original author's name, are you violating copyright law?
(by not copy pasting the original author's name).
This is determined by the common notion of whether new author deserves copyright over determined works. See this wiki page for primary introduction:
When does derivative-work copyright exist?
The simple answer is: when the change is significant. This is quite ambiguous given that it is a statement underlaw, but it is true. Even copying only rythm but not words and making remixes in music comes in severe gray area because of this; and this notion of significant change varies between laws of different countries.
Having said that, it would be suffice to notice that had you almost started with a new file and re-wrote the program, the new file will typically deserve your name rather than old author. In general, if you simply copy a file and simply change author's copyright notice to put your name, you will be violating copyright.
So as a practical advice if you have started out with new set of
files, put your name, if you have kept original files, keep the
original names (you can add your name in addition).