I disagree with self being returned. Self refers something that is static and can be used to create a new instance of an object. $this is specifically the instance you are dealing with that is being returned, not a different instance. Maybe another way of stating it, self refers to the class $this refers to the object.

I'm open to hearing why self better describes what is returned.