Broke monolithic SafeParallelismChecker into two more files, one per checker pass performed,
namely, semantic checking and effect checking (which includes typechecking assignments).