c++: core: add extern C in header files

This PR adds extern "C" for the header files in core folder. Currently, we have header file in: 
- core,
- drivers,
- boards,
- cpus,
- sys,
- examples,
- tests

around 530 files. :D 
By splitting to multiple PRs for each folders I think adding extern C in these headers can be doable. ;-)