refactors context binding from _this to self