Рендеринг приложения в nodejs

Изменения API:
- `ns.tmpl` теперь возвращает строку. До сих пор он возвращал DOM ноду, но у нас нет DOM-а на сервере (он нам и не нужен)
- `ns.update` теперь поддерживает `options.syncOnly` (выполнить update только для синхронных видов) и `options.renderOnly` (результатом update-а должна стать HTML строка)

Особенности работы:
- лейаут, модели, виды и роуты надо выносить в отдельный файл / файлы, чтобы инклюдить их на клиенте и на сервере. К примеру, https://github.com/chestozo/noscript-demo/blob/master/server.js#L15-L18
- на стороне приложения надо переопределить `ns.tmpl` и `ns.http`, к примеру, так https://github.com/chestozo/noscript-demo/blob/master/server.js#L20-L49

Пример:
допилил своё демо приложение https://github.com/chestozo/noscript-demo/
```sh
git clone git@github.com:chestozo/noscript-demo.git
cd noscript-demo
npm install
node server-data.js &
node server.js
# -> http://localhost:2014/
# Тут будет отдаваться html, сгенерённый на сервере.
# При этом одна из моделей грузится по http на стороне nodejs.
```

А ещё я хочу сказать вот что:
- DOM не потребовался, потому что доработал `ns.update`
- вообще основная работа по прикручиванию ложится на плечи разработчиков приложения, в noscript почти ничего упростить нельзя
- нужно внимательно писать yate external функции. Там нельзя использовать глобальные объекты, которые есть в браузере (`window`, `document`, `location`). И вообще все глобальные объекты должны быть доступны в nodejs и их нужно передавать в yate, как тут https://github.com/chestozo/noscript-demo/blob/master/server.js#L24
- чтобы это заработало, нужно, чтобы @pasaran замёржил https://github.com/pasaran/yate/pull/226
- надо ещё научиться как-то вырезать корневую ноду, которая прилетает из yate `<div id="ns-root"> ... </div>`. Но это делается на стороне приложения, а не noscript
- **NOTE** предполагается, что перендеринг будет только синхронных видов (только так можно избежать работы с DOM-ом). Была ещё идея сделать у `ns.update` `syncMode: true` - чтобы все view считались синхронными и все данные запрашивались тоже синхронной пачкой. Пока не делал.