Import library doesn't add root category to library nodes tree

#### Purpose

1. Fix merge bug: Import library doesn't add root category to library nodes tree.
2. Make work with ViewModels in LibrarySearchView view & code.

#### Modifications

To fix bug were added event `CategoryBuilder.RootCategoriesCollectionChanged` were saved `CollectionChangedEventHandler` of `rootCategories`. We need to save it because in some functions we recreate `rootCategories`.

For second task I have just created property `SearchViewModel.SearchRootCategories` which exposes Model's `SearchRootCategories`.

#### Additional references

[MAGN-5677](http://adsk-oss.myjetbrains.com/youtrack/issue/MAGN-5677) DUI: Import library doesn't add root category to library nodes tree 
[MAGN-5667](http://adsk-oss.myjetbrains.com/youtrack/issue/MAGN-5667)  DUI: Make work with ViewModels in LibrarySearchView view & code

This PR should be merged after https://github.com/Benglin/Dynamo/pull/246.

#### Reviewers

@Benglin, please, take a look.
At line 63 we create new collection. But new collection doesn't have our `CollectionChanged` eventhandler. That's why next operation with model `rootCategories` will NOT update UI. Because of it reason I have created new property `RootCategoriesCollectionChanged` as `EventHandler` not event.

Will rewrite it using your proposals above.