[WIP] Tree decl

:warning: Still working out the details :warning:
But the idea is:

```hs
data Declaration :: * -> * where
    DecNode :: k -> Identifier -> DecFNode -> [Declaration k] -> Declaration k
    DecLeaf :: k -> Identifier -> DecFLeaf                    -> Declaration k
```