good point this was not inteded.

 i will redo this one from scratch and just explicit implement interfaces no movving of methods