Redid structure

Please limit work to the extension files.  We still need to do
documentation for all of them.