In a large pot, melt the butter. Add the onion, carrots, celery and garlic and cook over moderate heat, stirring, until softened, 5 minutes. Add the cumin, coriander and chile powder and cook until fragrant, 3 minutes. Add the tomatoes and cook just until softened, 2 minutes. Add the lentils and 8 cups of water and season with salt. Simmer over moderately low heat until the lentils are very soft, 30 minutes.