OK, I have got the temperature problem fixed.
It was the thermostat. I had discounted the 'stat because:
a. it's fairly new and
b. the water temp was reading normal.
So I changed all the heater hoses and tried it again. When I ran the car the oil temp went high again so I switched it off and it was then that I noticed the pipe from the radiator to the thermostat housing was cold. So I removed the 'stat, checked it then threw it in the trash. New 'stat - problem solved.
The engine is running kinda ok now. It wont idle very well and I've got codes so it looks like the IMRC is going into therapy next weekend.
Thanks to all for their contributions.