Began rewriting ydb_planner module.

Inverted the nesting order of how queries are defined. Rather than
going from the input stream to its listener and so on, the nested tuple
is node in the plan that the one currently processed listens to.

As written, this function make/1 is not tail-recursive, but could be
done so using continuation-passing style.
Changed function used to prepare the queries.
Removed unnecessary functions from planner.

Delete make_nonjoin/1 and make_no_branch/1.
Added support for stream-to-stream operations in planner.
Added support for socket output in planner.
Added support for windowing operations in planner.
Added support for aggregate operations in planner.

Includes the following, on both streams and relations.
  (1) sum
  (2) count
  (3) min
  (4) max
  (5) var
  (6) stddev