I am writing a plugin which I want to use the CDT-plugin (since I don't want to implement my own brand new C/C++ editor).
Questions:
Fro your first question, simply add the CDT plugins to your Required plug-ins of your project. Details here.
Editors and natures are different things, you cannot set an "editor as a nature". Probably what you're searching for is the C++ nature you want to set for a project programmatically. Simply search the nature's ID in the .project
file of a C++ project, then you can start looking into the details.