Move things to better locations, add documentation.