Add comment
Fix shared lib extension and export the cinit() fct for Windows.
When generating an executable, use the shared lib header in the shared
lib.

This remove the duplicate declaration of a struct.
Make the shared lib generation for an executable work on Windows.