Работа над кэшем

Определёны интерфейс и заголовочный файл
Реализация чтения кэша
Рефакторинг кода. Подготовка для реализации #30

Разведена реализация FUSE и манипуляция с объетами БД. Это даст возможность реализации идеи SQLFuse для других СУБД.

- добавлен общий интерфейс sqlfuse.h
- логика работы MSSQL полностью выведена в директорию mssql/
- использование вместо trimwhitespace() -> g_strchomp()
- изменена логика работы readdir() -> fetch_dir_objects()
Дальнейший рефакторинг #30

Не используется более файл mssql.h
Поле cached_time только в структуре sqlfs_object
Работа над #30

Отдельный процесс для обработки очереди
Параметр задержки сброса кэша
Работа над #30

Правильное завершение потока
Множественные утечки в памяти
Работа над #30

Улучшена структура хранения объектов в кэше
RW-мьютекс для struct sqlfs_object
Утечки памяти в tsqlcheck.c
Подгонка основных процедур под #30

Параноидальное исполнение команд, - всё или ничего
Методы write, remove используют механизм cache-deploy
Гибкий захват блокировки на контекст выполнения запросов
Контекст выполнения запроса не восстанавливается
Утечки памяти
Переименование/перемещение для #30

Процедура переименования/перемещения работает в транзакциях
Небольшие утечки памяти
Сброс таймера при операциях с маскированием
Баг при удалении вновь созданного объекта #30

Не удалять вновь созданный объект из БД
Работа над #30

Доработано переименование/перемещение
Утечка с load_module_text
Сортировка по cached_time
Подготовка для обработки таблиц в транзакции
Работа над #30

Схемы и таблицы создаются в транзакции
При генерации колонки идентификатора убраны символы `'`
Баг при определении типа лексером
Причёсывание для #31

Переделана логика метода load_module_text
Макросы IS_REG, IS_DIR, процедура is_temp
Поле is_temp в struct sqlfs_ms_obj
Корректная обработка созданных таблиц без полей
Улучшения для #30

Оптимизирован эвристический алгоритм деплоя
Убрано поле is_temp
!! Не работает деплой колонок для таблиц
Исправление багов #31

Улучшен алгоритм деплоя кэша
Генерация inode на основе object_id + monotonic_time
Потокобезопасность для деплоя кэша
Merge branch 'cache_deploy' into v0.0.5

Реализация кумулятивного кэширования, и деплой по таймауту