You have two issues that you are wrestling with here. Licensing and Copyright.
Licensing is how you intend to allow others to use your code. You stated you wish to use GPL.
Copyright is who owns the expression of the ideas that your code represents.
You may allow others to use your code (aka license their usage) without giving up ownership of that code. Any modifications to the ideas (code) would subsequently be owned by the authors making the changes.
You need to answer what it is your truly are trying to accomplish.
If you just want others to be able to use your code, modify, and re-publish, then licensing is all you need to worry about. And you're done in this case, since you've settled upon the GPL.
If in the future you want to be able to fork the project and re-license it under a different license, then you'll need to worry about copyright. All copyright owners must agree to the re-licensing of the project. And that's where things start to get tricky.
If you want others to be able to re-license the project without your intervention, then you would need to renounce your claim to copyright of the code. Note that future users would still need all the other contributors to do the same thing, or they would have to get re-license permission from the other copyright owners.
If you plan to shepherd this project for some time, and reserve the right to re-license in the future, then you'll want to have contributors assign their copyright to you or provide some long term means of contacting them for future approval.
Based upon your question, I think you are looking at the simple case and just want others to use your project freely. That's a license question, and you're already done since you picked GPL.