abstract type of the document

Попробовал абстрагировать тип документа(до этого он был `type Document = HashMap Label Value`).

Хочется иметь возможность заменить представление в виде хэштаблицы на что-нибудь другое, чтобы при этом не сломалось ничего ни внутри, ни снаружи.

Есть предположение, что, так как многие JSON-документы соедржат не очень много ключей, можно придумать что-то более быстрое, чем HashTable.

Не очень понятно, какие функции про Document надо экспортировать(например мне пришлось вытащить `Document.fromList` для тестов, но это, очевидно, плохо).