Seems like one big simplification would be to make a bunch of base “characters” (face, poo, dog, etc) and a bunch of combining characters (smiling, frowning, crying etc).
The current crop could be precomposed characters.
The current crop could be precomposed characters.