Place potatoes in a saucepan, covering them with cold salted water and bring to a boil over high heat; boil for 15 minutes or until potatoes are tender (alternately, place potatoes in a microwave safe bowl. cover with salted water and cook on high for 15 minutes)
Once the potatoes are tender, drain them and let the potatoes sit, uncovered to dry out a bit.
In the bottom of a mixing bowl, add cream cheese and butter and add the cooked potato chunks; beat with an electric mixer until smooth (alternately, if you like a completely smooth mixture, mash potatoes with a masher, or put through a food mill, then add to the butter and cream cheese and blend to combine.
Whisk together egg yolk and milk in a separate bowl, then beat into potatoes; add the sour cream and season well with salt and pepper.
Pour the mixture into a buttered 9 x 13" baking dish and let cool; cover with plastic wrap and refrigerate until needed.
To reheat, bake in a 350 F oven for 20 to 25 minutes or until heated through (if you want an extra creamy mash, add a bit more milk and beat by hand with a wooden spoon before heating; if you would like a crunchy topping, simply scatter a handful of grated cheese on top of the potatoes before re-heating)