committing many changes before I shift drag and drop from current
version to the hopefully simpler Allen Sauer one