1. Cut the greens off the beets and discard the tough stems. Roughly chop the leaves and tender stems. In a medium saucepan, cover the beets with the water and bring to a boil. Simmer over low heat until the beets are tender, about 45 minutes. Strain the beet-cooking liquid into a large bowl. Transfer the beets to a plate and let cool, then peel and coarsely grate them on a box grater.
2. Heat the oil in a saucepan. Add the shrimp shells, season with salt and pepper and cook over moderately high heat, stirring, until the shells start to brown, about 5 minutes. Add the tomato paste and cook, stirring, until glossy, about 2 minutes. Add the beet liquid and bring to a boil, then simmer for 20 minutes, skimming occasionally.
3. Strain the broth into a large saucepan. Add the onions, celery, beet greens and grated beets and bring to a boil. Cover and simmer over low heat until the celery and onions are very tender, about 25 minutes. Add the shrimp and simmer until just cooked through, about 1 minute. Remove from the heat and let stand for a few minutes.
4. In a small bowl, combine the sour cream, dill, garlic and lemon salt. Stir the sour cream into the soup, season with pepper and serve.