adds warning copy to handle incorrect array replacement questions
refactors DSA question, abstracting evaluation logic out into smaller methods
refactored passing of evaluation scope into the initialization of objects