simplify ib.opt.Receiver and avoid metaclass for py3 compat