Many changes, now almost ready for other people to use.