Refactored to separate scaffolder classes