Many things now resolved.
Ray called and we tried a different test c/c account rather than one from the default sandbox list, and it worked immediately!!
Ok, i have moved much of the bespoke functionality onto the checkout wizard pages and am getting close.
Direct payments is working OK, though i need to change/move some functions around, such as when the confirmation email is sent and the datbase is updated, (on the checkout_success page right?)
one little thing which i can't fix.
if i go the paypal express route, the login works, i am directed back to the pp_confirm page, and all the info is there, however if i update the shipping option, the form values are set to zero, (they come back if i press F5)
i am pretty sure it is the trigger on lines 107 and later, but i wanted to confirm what they were for, and how do i stop them firing when i click the update button on the shipping form