update TODO.
diff --git a/TODO b/TODO
index ab77eaa..e665bf7 100644
--- a/TODO
+++ b/TODO
@@ -1,26 +1,24 @@
-TODO
+INPROGRESS [forms] Удобные средства расширения форм (в т.ч. и для использования в Form processors);
+* [forms] Больше виджетов для форм;
+* [forms] Средства создания "мастеров";
+? Более удобный paginator;
+INPROGRESS [CRUD] Автоматические CRUD-контроллеры;
+* Человеческая обработка завершения программы;
+* [config] Все параметры, которые сейчас hard-coded, брать из конфига;
+INPROGRESS [i18n] Полу-автоматическая интернационализация с помощью какого-л. Middleware;
+INPROGRESS [cache] Более высокоуровневый интерфейс для кэша - чтоб было легко закэшировать результат всей функции;
+INPROGRESS [cache] Соответственно, простые средства для инвалидации кэша;
+INPROGRESS [SQL ORM] Более продвинутые и высокоуровневые функции генерации SQL;
+? [SQL] Слой абстракции от диалекта SQL;
+? [ORM] Генерация описаний моделей по БД;
+! [DOC] Документация ко всей этой красоте.
+* [TEST PUT] Протестировать поддержку PUT web-сервером;
- * [PARTIALLY DONE] Удобные средства расширения форм (в т.ч. и для использования в Form processors);
- * Больше виджетов для форм;
- * Средства создания "мастеров";
- * (?) Более удобный paginator;
- * [PARTIALLY DONE] Автоматические CRUD-контроллеры;
- * Человеческая обработка завершения программы;
- * Все параметры, которые сейчас hard-coded, брать из конфига;
- * [PARTIALLY DONE] Полу-автоматическая интернационализация с помощью какого-л. Middleware;
- * [PARTIALLY DONE] Более высокоуровневый интерфейс для кэша - чтоб было легко закэшировать результат всей функции;
- * [PARTIALLY DONE] Соответственно, простые средства для инвалидации кэша;
- * [PARTIALLY DONE] Более продвинутые и высокоуровневые функции генерации SQL;
- * (?) Слой абстракции от диалекта SQL;
- * (?) Генерация описаний моделей по БД;
- * (!) Документация ко всей этой красоте.
- * Протестировать поддержку PUT web-сервером;
-
- * [DONE] Генерация структуры Form по Model (с возможностью переопределить, или просто не использовать);
- * [DONE] Бэкенд для MySQL;
- * [DONE] Чтение конфига из файла либо удобный EDSL для конфига;
- * [DONE] Перенести текущий правленный Network.Shed.Httpd в дерево проекта (написать свой?);
- * [DONE] Лучше интегрировать Httpd в движок, в частности - чтоб средствами движка писал логи итп;
- * [DONE] Лучше формализовать формат запроса (reqMethod=="GET" -> reqMethod==GET итп), вероятно, следует привести в соответствие с Network.HTTP;
- * [DONE] При отдаче статики не коннектиться к БД и прочему;
- * [DONE] Отдельная структура (и модуль?) для конфига (StaticConfig в нынешнем виде должна стать промежуточной структурой, заполняемой из конфига);
+DONE Генерация структуры Form по Model (с возможностью переопределить, или просто не использовать);
+DONE Бэкенд для MySQL;
+DONE Чтение конфига из файла либо удобный EDSL для конфига;
+DONE Перенести текущий правленный Network.Shed.Httpd в дерево проекта (написать свой?);
+DONE Лучше интегрировать Httpd в движок, в частности - чтоб средствами движка писал логи итп;
+DONE Лучше формализовать формат запроса (reqMethod=="GET" -> reqMethod==GET итп), вероятно, следует привести в соответствие с Network.HTTP;
+DONE При отдаче статики не коннектиться к БД и прочему;
+DONE Отдельная структура (и модуль?) для конфига (StaticConfig в нынешнем виде должна стать промежуточной структурой, заполняемой из конфига);