[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
My main problem with synchronize blocks was that from the concurrent point of view wouldn't be the same. 
Have a look at this function:
https://github.com/elguardian/jboss-ejb-client/blob/master/src/main/java/org/jboss/ejb/client/EJBClientContext.java#L1038

If I remove the synchronize keyword from there i would break the behavior as long as the "closed" check and the operation over the cluster context are in the same block. 

If I use two locks I will probably break to some extent the concurrent behavior of those functions.