Spin off node generation logic into testable class

The existing node logic _works_, but it's not the easiest to understand.
Rewrites that logic, spins it off into a testable class, and adds tests.

Also cleans up a few things in the name of testability:
- Changes NotifViewBarn to deal with bare NodeControllers
- Exposes the ability for tests to modify the attachstate of
notifentries
- Fixes some formatting in treeSpecToStr

Test: atest
Bug: 196408434
Change-Id: Ie6b6298fb228e59906d34a9906b0f43472100682
6 files changed