SWITCHYARD-2009

As discussed here: https://community.jboss.org/message/870119.
Also a pull request for core
Can you explain this logic? 
If you select preferLocal, no matter if clustered or not this executes (Fine)
then if there is a localEndpoint for the service and load balance strategy do a remote otherwise a local?
I think that it should be something like:
- if there is localendpoint invokeLocal, otherwise invokeRemote. 

Also, now that this is a RemoteInvoker, you could optimize that if the "LoadBalanceStrategy" gets you a local endpoint, invokeLocal.