Pour the milk into a small saucepan and place over low heat. Heat until the milk is just lukewarm. Take the pan off of the heat and sprinkle the yeast over the surface of the milk. Let stand for 10 minutes or until foamy.
Pour the yeast and milk mixture into a large stand mixer fitted with a dough hook. Add the salt, honey and a cup and a half of the flour. Mix on low speed until the dough comes together.
Add the remaining flour in 1/4 cup increments, waiting until the flour is well-integrated before adding more. Add only as much flour as the dough needs. The dough should be slightly tacky, silky to the touch and capable of cleaning the sides of the bowl.
Start adding the butter to the dough, 4-5 cubes at a time. Only add more butter when the previous pieces are no longer visible.
Transfer the dough to a well-floured surface and knead by hand until silky and smooth. This should take anywhere from 5-10 minutes. Form the dough into a ball and transfer to a bowl greased with vegetable oil. Cover the bowl with a tea towel and let rise in a dry, warm place for an hour and a half or until the dough has doubled in volume.
Punch the dough down and, using a kitchen scale, measure out pieces of dough weighing 100 g. Form the dough pieces into balls and place them on a large baking sheet lined with parchment paper leaving 2 inches of space around them on all sides. You should have anywhere from 8-10 buns. Cover the baking sheet with a tea towel and set aside to rise again.
While the buns are rising, preheat the oven to 375°F. Once the buns have doubled in volume, whisk the egg and water together in a small bowl. Using a pastry brush, brush the egg wash over the surface of the buns.
Place the buns in the oven and bake for 10 minutes. Rotate the pan and bake for another 10 minutes or until golden. Take the buns out of the oven and transfer to a cooling rack. Let the buns cool completely before storing in a brown paper bag.