## custom impl for `debug print-functor`

implements #7 (closed)

This still does not support all functors, so this is mostly for early feedback. Currently supported examples:

```
copar debug print-functor "D({f,n}xPX)" --no-functor-transforms
Distribution D'0
└ '0: Polynomial {f, n}x'1
└ '1: Powerset P'2
└ '2: Variable X
copar debug print-functor "D({f,n}xPX^{a, b, c}+({f, n}xX))" --no-functor-transforms
Distribution D'0
└ '0: Polynomial {f, n}x'1^{a, b, c} + '2
├ '1: Powerset P'3
│ └ '3: Variable X
└ '2: Polynomial {f, n}x'4
└ '4: Variable X
copar debug print-functor "{f,n}xP(D({f,n}xPX^{a, b, c}+({f, n}xX)))+X" --no-functor-transforms
Polynomial {f, n}x'0 + '1
├ '0: Powerset P'2
│ └ '2: Distribution D'3
│ └ '3: Polynomial {f, n}x'4^{a, b, c} + '5
│ ├ '4: Powerset P'6
│ │ └ '6: Variable X
│ └ '5: Polynomial {f, n}x'7
│ └ '7: Variable X
└ '1: Variable X
```