separate issue.
and suggestions from others. A few files need to be added manually in the next commit.