avoid 'var self = this'

except where it seems reasonable