I would like to add my support for the PCs are literate, but most NPCs are illiterate position. If a player wants his character to be illiterate for RP reasons, I'm totally supportative, but it should be decided by the player. I usually assume that anyone (NPC) whose job requires it is literate, while most of the remainder are illiterate.
I've never bought into the idea of common as a universal language. That's just the historian in me. In my campaigns there are languages that many people speak. All of the folks living in the former Livonian Empire speak Livonian. They may even call it common (the medieval/late antique Greeks called their language koine - which means common). Folks from other areas would only speak it, if they were engaged in some enterprise that required them to deal with foreigners.