In a medium saucepan, bring 4 cups of water to boil. Add the bulgur and cook for 2 minutes. Remove from the heat and let stand uncovered until the bulgur is softened and chewy, about 30 minutes. Meanwhile, preheat the oven to 350°. Toast the pine nuts for about 7 minutes, or until golden. If using fresh fava beans, blanch them in a small saucepan of boiling water until just tender, about 5 minutes. Peel off the tough skins. Drain the bulgur in a fine sieve, pressing lightly to extract as much water as possible. Transfer to a bowl and stir in the fava beans, tomato, garlic, dates, lemon juice and oil. Season with salt and pepper and let stand at room temperature for at least 1 hour or up to 3 hours to allow the flavors to blend. Stir in the cilantro and pine nuts.