sort of rewrote part of scotts related work but added a lot of what he did not mention.  scott's stuff is still there
Merge branch 'master' of https://github.com/spall/advalg
merge my work with scotts work
putting scott and my's owrk together