Add hierarh view. Bag if loop

Суть обхода - получаем корневые проекты. Берём их детей. Продолжаем. Но
если будет зацикливание в проектах, то мы получим баг. Например ветку
1-2-3-1 никодна не увидим У неё нет корня.
Fix loup bag.

Теперь все проекты не попавшие в иерархический список(без корневого)
выводятся в конце отдельным списком.