Refactored naming and source structure