factorize common set behaviour
put all the fallback implementations in the common set operators. (needs new-style classes, which in turn makes slice objects more generic, so we have to handle indefinite cases)