заменены Set на ArrayList там где нужна сортировка
добавлена запись в файл
изменен формат  вывода записей TableRecord
вынес код в отдельные методы
добавил документацию