Refactored to remove dependencies; use Core Text to look up glyphs