Moved Navigation Bar Functionality to use the New Tree

Notable differences:

* For an external module in file `a/b/c.ts`, the "top-level" container is displayed as `"c"`.
It's a style that is more canonical with the rest of our system. Plus, it makes no sense for these sorts of features to use a class.

We want to get an output of navbar items from a sourcefile. A function sounds entirely like something that achieves this. We don't need to create an instance of some class that has a method that achieves just that.

My personal feeling is that it confounds abstraction with flow. But I'm just a functional programming weenie. :wink: