fix extern(D) calling convention

http://forum.dlang.org/thread/zogygbvfszssudpaejwo@forum.dlang.org

Merely a quick sketch. Feel free to suggest a clean way.
Follows typfunc model with additional check where it's used (cod1.c funccall).
In cv4_func there's no such check so I don't know.
Yeah the dmd backend separates the cc into its components. Parameter passing order, stack cleanup,..
As I said this is just a sketch.
The problem I faced is these things are fixed at compile time but 32/64 bits is a runtime switch.