[EJBCLIENT-120] Hang in AbstractHandleableCloseable.close() when using @Clustered

Extract the logic from cluster context outside EJBClientContext for
uncoupling the operations between EJBClientContext and
ClusterContext. This removes the deadlock when both types
of operations are being invoked through the EJBClientContext.
BZ 6.x https://bugzilla.redhat.com/show_bug.cgi?id=1133980
In terms of concurrency behavior, these two bits of code are identical:
```
public synchronized void doSomething() {
    // ...do stuff...
}
```
and:
```
public void doSomething() {
    synchronized (this) {
        // ...do stuff...
    }
}
```

The only difference is, in the first example, the published API contract of the method is polluted with an internal implementation detail, which is why I do not prefer this option.