немного рефакторинга основного класса.
разобрался с кодировкой. теперь результат работы программы можно корркетно запустить в браузере и проверить, что все хорошо :3
вроде бы все готово. жду проверки преподавателя.