Moved things into their own packages for the sake of better organization