Refactored packages to put different groups work into a cohesive system.