use broadcast_with in .set() and kill the ill-named broadcast method