2) I really think that carbon is a totally separate API that isn't based on cocoa. the reason for this is because of the behavior of things. For example, think about windows. All Cocoa windows support live window resizing. This isn't always true with Carbon, although it is in the Finder. Also, You can't resize a Cocoa window below the last few pixels on the screen, while a carbon app doesn't have that restriction. Try resizing a window in the Finder and then try resizing something like a window in Omniweb and you'll see what I mean. Actually that is a good way to see if a program is Cocoa or a Nib based carbon app since both use package formats.
Basically, if apple was going to map stuff in Cocoa to that in carbon they wouldn't take the time to make things like that different. Also, think about it: the Cocoa frameworks aren't available in OS 9, and Cocoa apps dynamically link to them. I just don't think that Carbon lib is going to provide the type of runtime system that is needed for apps to link to a Cocoa framework. It could be that the API's for OS9 are compiled into the program and those for OS X are dynamically linked, as needed, but then windows and stuff should behave the same for Carbon and Coco apps and that just isn't true.
So I'd really doubt that Carbon is just a wrapper for the Cocoa API.