Catalog Tree performance boost

By using ng-if in node elements (categories), we can add/remove DOM elements (and their assiciated scopes/watches) based on if the node is open or not.

It's really nice how angular plays with this, as the state of the tree is kept in the model and when the elements are recreated (also the scope gets recreated), the new elements reflect the state of the existing model!

I'm quite sure this can be improved further, but for now this boosts performance extremely (when catalogtree is closed).