Concordo que temos que tentar aproximar às nossas definições locais e não se ater às traduções literais. Mas associar “vila” a “town” ao invés de “village” ou “hamlet” me parece bem correto ao comparar os textos da Wikipédia em inglês e em Português.
Ou seja, pela definição da Wikipédia (e não por uma tradução direta), town = vila.
Já na correspondência entre “village” e “aldeia” você tem razão. Ela é possível para português de Portugal, mas não no Brasileiro:
Entre “hamlet” e “aldeola”:
Detalhe: parece que alguém está atualizando isso na Wikipédia, pois existe um artigo idêndico para “povoado”: http://pt.wikipedia.org/wiki/Povoado
Então:
town = vila
village = aldeia em Portugal; no Brasil há outra conotação, então quem sabe usamos “aldeola”?
hamlet = povoado
Outra sinônimo para “lugarejo” é “vilarejo”, talvez soe melhor. Vários dicionários definem como “pequena aldeia ou vila” (praticamente estabelecendo uma equivalência popular entre aldeia e vila).
Outra coisa que achei em http://pt.wikipedia.org/wiki/Cidade#Brasil :