Category List - Grouping

Now the grouping of visual categories is done by a single function named
PopulateAdvCategoryList.
This function should be used for:
1. Category grouping on transaction panel (Done)
2. Edit categories on setting panel (Done with poor visual design)
3. Category selection on floating separator (Needs to be done)

This function manually created visual ListBoxItems with the category
object DataContext using the DataTemplate Style that is described using
xaml.

Groups of categories are NOT categories themselfs!
They are a way to organize categories. category can not be without a
group.