To make the broth, heat a large pot over medium-high heat. Add the onion, shallots, garlic, ginger, cinnamon sticks, star anise, and cloves and dry-roast, stirring occasionally, until the vegetables begin to char. Add the stock and soy sauce and bring to a boil over high heat. Turn the heat down to medium-low, cover, and simmer for about 25 minutes. Strain into a clean pot and discard the solids. Taste the broth and add salt if necessary. Keep warm over low heat.
While the broth is simmering, prepare the rice noodles. Place the noodles in a large bowl. Pour boiling water over the noodles to cover and soak for 20 minutes.
When you are ready to assemble the soup, add the seitan or tofu to the warm broth and allow to heat through. Drain the soaked rice noodles and divide evenly among 4 to 6 large bowls. Using a slotted spoon, scoop the seitan or tofu out of the broth and distribute among the bowls. Ladle the hot broth over the noodles. Serve the bowls of pho with the scallions, bean sprouts, herbs, lime wedges, hoisin sauce and chili sauce on a seperate platter so that everyone can season their own soup as they wish.