Handle when the config has absolute paths not under the current
working directory.
Skip recursive type references (as created by goog.addSingletonGetter).
Add an index bounds check.
Add precondition checks to prevent runtime exceptions
Use immutable types for computed collections for slightly improved perf.
Hide nav submenus when there is no data to display.
Fix broken tests (really need to stop breaking stuff)