move lots of things into subpackages