Wrote a skeleton for the handler for MSGSTREAM_ZUDI_CHANNEL_SEND. It accurately
detects the type of channel message (mgmt vs generic) being sent, and also
intercepts new endpoints without initialized endpointPrivateData pointers.

* Wrote some supporting functions in lzudi::sEndpointContext.
* Wrote some supporting functions in fplainn::DriverInit.

* sChannelMsg objects now also come with a pointer to their __kendpoint. This
  allows the region thread to use setEndpointContext on the __kendpoint when it
  has finished allocating a new sEndpointContext for the __kendpoint.