moved everything into a package