Right... an update

Firstly a huge thanks to Hitchcocks (particularly Wayne) who took my ECU in by post for testing. It has shown up 4 faults: oil temp sensor fault, injector fault, fuel pump fault and crank position sensor fault. Now here is the thing...
When checking various things on the bike I plugged and unplugged certain things to check for continuity and voltage etc. I know I definitely unplugged the engine temp sensor to check for voltage - I suspect this might have stored that fault. I am fairly certain I also did the same with the injector and fuel pump to 'test' for the diagnostic light working, hence storing those faults. I definitely haven't unplugged the CPS. However, here is my thinking...
The bike runs rubbish when cold, and better when warm. I would suspect this means the temp sensor IS doing its job unless it is 'stuck' on warm... any ideas how to test these sensors? I suspect the injector IS working fine becuase the bike runs quite well at higher engine speeds (when there is more demand on fuel delivery) and not so well at low speeds. Does this make sense? I know injectors can be cleaned... Ditto the fuel pump - runs fine at high engine speed, not so well at low speed so this makes me think fuel delivery is fine. This leads to the CPS - presumably the CPS advances or retards ignition dependent on various factors. I don't claim to know what these factors are... but I assume temperature is one? Engine speed being another? Could it be that the CPS is the real 'fault' here? How to test one of these? In fact, how to test all of these things? Any ideas would be great
Not put everything back together yet, but the folks at Hitchcocks tell me that clearing the ECU of faults can reset its memory somewhat and often results in improved running, especially if there were no 'real' faults to begin with. will stick things back together in the next week or so and see how things go. Firstly I have a fuel tank to paint... well, the damaged underside bits anyway