Refactor package structure for easier understanding.