Added test for #1016
Removed special casing of the self type for the `of` operator
Pretty horrible fix for #1016
Fixed tests that changed as a side-effect of fixing #1016