Add assignment implementation, elaborate on code comments