Formatting implementation using new tree

This PR adds implementation of code formatting that works atop of new tree. I would not suggest to review the code commit-by-commit as intermediate checkins here often contain non-relevant details that are ultimately removed in final implementation.
this is for cases like:
```
case  0:
    {
    ....
    }
    break;
```

braces are indented on the same level as `break`