introduce another intermediate supervisor into the connection tree
Defer starting a queue collector until we've received tune-ok

By waiting for the connection to be fully opened, we reduce resource
usage for abandoned connections and DoS vectors. The collector is
started as a child of the connection_helper_sup, thus avoiding a
potential deadlock with the parent supervisor during shutdown.
Unify the intermediate supervision tree under r_connection_helper_sup

This deprecates r_intermediate_sup and transitions the chan_sup_sup and
queue collector processes into the helper sup, as well as providing an
API for starting both.
Introduce rabbit_heartbeat:start/6 API
...and remove the old API.
do not pass the queue collector to amqp_1.0 reader
merge heads
Consistency
merge bug25404