Sorry for the lag in reply. I somehow missed your post.
1) Take a look at the components repository in GitHub for examples of how to structure and implement SwitchYard components. One example to look at would be the SOAP gateway.
2) Actually, you don't have to choose. You can create a SwitchYard component which also implements the appropriate Camel component interfaces as well.
For 3 and 4) The core message exchange API in SwitchYard is designed to be asynchronous, so the send of a message can be decoupled from the receipt (which is handled by an ExchangeHandler in the core API). You can take advantage of these contracts directly when writing a component. Creating a service contract around this for implementing business services is a bit higher level and there are a number of approaches. For example, you could register with a oneway operation and then provide a callback address for subsequent replies. SCA provides a mechanism for providing a Callback interface, but we do not support that at the moment.
Thank you very much Keith for the helpful explanation :-)