clean up docs, fix some tests, fix imports on other objects, and various other things
require modern perl