Вся коммуникация у нас построена на концепции каналов. Каждое свойство - это некоторая функция, которая может выступать как просто геттер, так и сеттерогеттер. $mol_mem - волшебный декоратор, который реактивно мемоизирует возвращаемое методом значение.

Делегировать ввод/вывод в/из канала удобно в другие объекты, чтобы связывать их вместе. Например, давайте заперсистим свойство, хранящее айдишники, в локальное хранилище.
Теперь вы можете открыть приложение в нескольких вкладках и значение будет всегда синхронизировано.

Обратите внимание на поле $ - это контекст окружения. Он доступен всем компонентам и наследуется через иерархию владения. Через него любой компонент может переопределить любую глобальную переменную для всего своего поддерева. Например, заменим все стандартные кнопки на свои.

$mol_test сразу даёт такой контекст окружения, где все внешние и нестабильные зависимости уже замоканы. Так что мы можем безопасно запускать, например, приложение ToDoMVC, которое мусорит в localStorage. Создадим задачу и проверим, что она создалась, а поле ввода очистилось.

А теперь что-то по сложнее:
Создадим пару задач
Одну завершим
Попереходим по ссылкам и убедимся, что список задач правильно фильтруется.
$mol_state_arg - реактивное состояние адресной строки. Оно, разумеется, тоже мокается автоматически и пишет в память, а не location.
