API Events: Implement channel_send_event and vimscript wrapper

This function can be used to send arbitrary objects via the API
channel back to connected clients, identified by channel id.
API Events: Implement channel_broadcast_event and vimscript wrapper

This is similar to channel_send_event, but the event is sent to all
open channels.