TLDR: updated bindings, "virtual" classes now do less, and only deal with
managing the persistence of the codemp object within the editor.
the actual commands do the interaction with codemp.
moved away from asyncio, now its callbacks spawned on the async sublime thread.
the client now is much more central and knows everything.
split the join command into join workspace and join buffer, as it was before.
simpler and better ux.
Former-commit-id: 71c96d321fef2620da4301a8f7af5dff138921cd
the client doesn't hold the task manager anymore, instead it is now a
singleton that all objects dump their tasks into to be managed.
This allows to better separate the responsibilities of the various
virtual-objects. The client now is also a module-singleton which allows
us to remove that ugly global variable.
fixup: uses relative imports instead that absolute ones with Codemp in front.
rename of codemp_client.py into just client.py
Former-commit-id: 4a0cc20e82f9631931ba2f61379a61c461b1f291