refactored a bunch of stuff (renames & new packages)