Put the potatoes on the boil so they can cook, and then cool them down.
Preheat oven to 180 degrees.
Cook the onion in butter until the onion is transparent, [approx 10 min.]
Add flour and cook for about 2 minutes. Add the milk and stir until it comes to the boil and thickens. When this has thickened, turn heat down low.
Add egg, cooked spinach, cheese, a bit of cracked pepper to taste, tuna and stir until everything is combined.
Put mixture in dish 30cm x 20cm, then cover with potato slices. Spread the sour cream on top, then cover with more grated cheese. If it is a smaller, deeper dish, put half the mixture in, then a layer of potato slices, then remaining mixture. Cover with potato slices, sour cream and grated cheese.
Cook in 180 degree oven for about 30 minutes or until golden brown on top.