Each library that you use as a dependency should have a LICENSE file in their source code. I would just take these licenses and rename them to "LIBRARY_NAME_LICENSE" and include it with the source code.
I know licenses (like the BSD license) require that the original license be included when any source code is reused.
If you are just using these as linked libraries, I don't believe any of this is needed. But I may be wrong about this one.
Since you're using MS-PL and Apache 2.0 components, you're restricted by the MS-PL license and the Apache 2.0 license. This means you can't use the GPL anyway, since it's incompatible with MS-PL, and version 2 of the GPL is also incompatible with Apache 2.0. Given that, I would suggest releasing your parts either under MS-PL, Apache 2.0, or a BSD-style, so you're not adding requirements.
You can read the licenses to see what you have to do. They aren't long. With MS-PL, you can do pretty much everything as long as everything's released under MS-PL and you include the entire license (which isn't long). With Apache 2.0, it's pretty much the same, except that you need to include any NOTICE file. You do have to include all attributions, etc., and that's pretty standard across OS licenses.
You really can't add to the licenses. You are free to put any disclaimers you want. You can put them in a NOTICE file, which under Apache 2.0 requires them to be preserved.
You should list which files are under which licenses, and you do have to include full copies of MS-PL and Apache 2.0 in the package.
Be careful about ADO.NET Entity Framework CTP4, as you say you can't find a license. If you can't find a license, ordinary copyright law applies, and you can't legally use it. You may want to write to whoever owns that code, and see what license they use.
As far as copyright ownership goes, you can never retract open source licenses for the versions you release under them, but if you own all applicable copyrights you can relicense as you wish. Some companies, like MySQL AB, released what they had under the GPL, and would sell other licenses for money, so that (say) another company could use MySQL as a part of their commercially sold product without having to release under the GPL.
Since you're using components owned by other people, you really can't do that with the entire project, but you could with your portions.
To do that, you'd have to get everybody who contributes to fill out a copyright assignment form, along with some proof that they do own the copyright (and, for example, that it doesn't count as work for hire for an employer). This does tend to diminish user contributions, so you may want to skip it entirely. You might want to look at what the Gnu project does, since they do want complete copyright, and emulate them.
Best Answer
Look at existing free software. They generally have a comment with a license and a copyright owner. Often, there is a list of contributors.
For example, for GCC, the file
gcc/gengtype-state.c
starts withSee also this answer (to a question related to yours). The GPLv3 seems to require such comments. An example of GPLv3 code with the copyright owner same as the author is onion/onion.c from the
onion
HTTP server library.Caveat: I am not a lawyer
Regarding organizations to join, you might be interested by the FSF or some free software "user" organization (like April or Aful in France; perhaps you could find the equivalent in your country).
My preference is for GPLv3 or LGPLv3 licenses.