Language agnostic automatic code grading system