[ns.View] updateTree и common-дерево

Задача из #261 

Тут есть две подзадачи, мне кажется они пересекаются
1. Дерево генерируют `view`, `viewcollection` и `box`. Кажется надо `ns.View#_getTree` занаследовать в box, тоже. В общем, по максимум убрать дублирование генерации свойств дерева.
2. `is_models_valid` хочется заменить на более красивый флаг, например, `errorState`, чтобы говорить не "почему", а говорить о текущем состоянии вида. Я исхожу из той логики, что сейчас флаги `async`, `placeholder` и `box` говорят о состоянии вида и не говорят почему они там оказались (оно и не надо), а `is_models_valid` не говорит о состоянии вида, но говорит почему он там оказался и почему у него вызвался `ns-view-error-content`. Я бы тут вообще все флаги куда-то унес, например, в объект state
```
{
  "state": {
    "async": false,
    "box": false,
    "error": true,
    "placeholder": false
   }
}
```
Может нам нужен метод `this.isRenderModeError()`?
Чтобы не переопределять `isModelsValid` когда хочется кастомно решать, ошибка это или нет.