Added handling of bad return values from launching pluggable transport c...

...lients #2064
newSingleThreadExecutor can't throw an exception no. The submit call can throw a RuntimeException, but not really in practice in our case. The prior code would just catch that exception and wrap it in a new RuntimeException, whereas the new code will just throw the original. So it's functionally equivalent, less code, and I think a little clearer because the prior catch makes it seems as if it's catching exceptions from the actual internal Callable, which it's not and which we have to do from the get(...) on the Future.