feat: support unicode, modify font types so no big changes are needed
refactor: move gui elements to gui library
feat: add font utils