Could you add some comments here, I'm still struggling with this new `Asignment` concept. In particular, what do `setAssignment()` and `isSimple()` mean?