feat: add outline for cursor
feat: add zooming to cursor
fix: cursor size to look natural
refactor: unify cursor functions
refactor: move direction functions to separate module
feat: add cursor functions