Created ydb_branch_node module.

Supports similar functionality to plan node behaviour by allowing
listeners, but adds support to register for only a particular type of
message.

This enables support for polymorphic input streams, where multiple
schemas are possible. We chose to model the events produced by a system
in this manner (potentially differing in arity and properties) to ease
the way connections are made to the system. Instead of needing to form
different sockets for each different type of event, all events can be
sent along the same pipeline.