Refactor Channel management
While checking for chip subscription test 3.6 it became clear that the current channel management was not correct according to the specification.
This change is adjusting this to correctly handle multiple channels per Fabric and not just one.
We also wire this with the capability Minimal value about concurrent CASE sessions per fabric.
Internally we still use Fabric AND Node, so in fact we have higher number of CASe sessions. The reason is that we need to validate the effect of limiting it when using controller. I left a TODO for this and add one to the project.