After lots of thought I got the registration page to work - it only took me about 6 weeks on and off. It needs a higher degree of logic and more careful study of the notes and instructions than I had been using.
The main problem was that in the past when inserting records into a database, I had always had the user_id (or index to the table) on the form as a hidden field, or the DW server behaviour did not work. Only after seeing a brief note about not using key fields in registration pages somewhere in the help did it finally click.
So this post is not really needed - but I have learned a lot from posting it and receiving Jason's answers.
Thanks a lot Jason.
Now I have to test the user update and lost password forms.
I'll probably be back.