Creates sdo-tree directive for tree navigation

The sdo-tree directive wraps the abn-tree directive
Turns tree-navigation into a plugin

- By separating tree-navigation into its own module, its easier to
configure and maintain
Makes tree-navigation configurable from its descriptor file
Lets user set per-service url settings when instatiating services
Sets default value for custom config
Renames service constructors
Lets user specify additional service providers via configuration

The app stores a list of service providers. The service provider used
to bootstrap the app is stored within this list and becomes the
default service provider.

Using the module-specific configuration, module authors are able to
choose the service provider that they wish to use.
Makes tree sections & sub-folders load data per config service details

The tree sections make use of their corresponding serviceProvider
and service properties to load content into them. This information
(i.e. serviceProvider & service properties) is passed on to the
sub-folders so they can also make use of them to load content.