deps: Update to the experimental msgpack 2.0 branch

Using msgpack 2.0 will let nvim be more compatible with msgpack libraries for
other platforms.

This also replaces "raw" references by "bin" which is the new name for msgpack
binary data type
Temporarily switch neovim/deps url
Temporarily switch python-client branches
map/msgpack-rpc: Declare/define maps rpc method handlers

The new map type uses `String` instances as keys to avoid unnecessary copying to
zero-terminated buffers.
msgpack-rpc: Refactor initializer and dispatcher

Use Map(String, rpc_method_handler_fn) for storing/retrieving rpc method
handlers in msgpack_rpc_init and msgpack_rpc_dispatch.

Also refactor serialization/validation functions in the
msgpack_rpc.c/msgpack_rpc_helpers.c modules to accept the new STR and BIN types.
msgpack-rpc: Move handle_missing_method to msgpack_rpc.c

Since that function is not automatically generated, it's best to place it in a
normal C module
msgpack-rpc: Refactor API metadata discovery method

A new method is now exposed via msgpack-rpc: "get_api_metadata". This method has
the same job as the old method '0', it returns an object with API metadata for
use by generators.

There's one difference in the return value though: instead of returning a
string containing another serialized msgpack document, the metadata object is
returned directly(a separate deserialization step by clients is not required).
msgpack-rpc: Remove support for integer ids in methods

There's no need to have integer and string ids, and since we now fully support
msgpack-RPC, support for integer ids was removed.
memory: Use i18n messages for memory-related errors
msgpack-rpc: Remove the `msgpack_rpc_unpack` function

The `msgpack_rpc_unpack` function was created to work around a deficiency in the
msgpack unpack API, which did not let the caller know if parsing failed due to
needing more data or to invalid input. The deficiency does not exist in the
latest version of `msgpack_unpacker_next`, so it can safely be removed.