Add the water, sugar and yeast to the mixing bowl and let sit for 5 minutes, until the mixture is foamy. Turn on the mixer on low speed and add in the powdered dry milk, softened butter, eggs, and salt. Let mix for 2 minutes. Add in about half of the flour. Add the rest of the flour as needed to form a slightly sticky dough. Knead until smooth and elastic, about 6 minutes.
Transfer the dough to a large oiled bowl, turning to coat. Cover and let rise at room temperature for 1 hour, or until doubled in size.
Turn the dough out of the bowl to a lightly floured surface. Roll into a long log, and divide dough into 32 equal portions, about 1 ounce each. Form each piece into a tight round ball, tucking the edges under and pinching the seam closed. Place seam side down. Keep all pieces covered as you go.
Beginning with the first ball you made (use the balls in order), use a small rolling pin to roll out the balls to 4-5" round (or oval, if making oval shaped). Place spoonful of desired filling on top, and pinch/pleat to close. Place bun on a parchment lined cookie sheet, and cover. Let rise for 20 minutes in a warm spot.
Heat oven to 375F. In a small bowl, whisk together the egg and water.
Brush each bun with the egg wash. Repeat so each bun has double layer. Optional: sprinkle sesame seeds on top. Bake 20 minutes, until buns are golden brown. Let cool on wire rack.