Issue #3678: Remove wrappers and call foreign functions directly

r? @sanxiyn --- I'd appreciate it if you can take a look at the logic for C abis in particular. I added some comments with my best effort to understand what was going on. I hope to come back at some point and clean things up in that regard, since the code as is is written with different assumptions (i.e., that there will be a wrapper and so forth).