refactor Package for simplicity and DRYness