Add shiftR and shiftL implementations to instance Bits Integer

Apart from simply making sense (avoid the conditional in 'shift'),
this makes left and right shifts on Integer more likely to inline
(plain 'shift' is just too large); and this in turn is important
when fixing the Integer case of #8832
Comments only, about the "RA" and "RL" nomenclature for shifts
Use not# rather than (`xor#` (-1)) for complement

I'm not sure why we weren't using not# before; maybe it wasn't
a primpop at that stage?  Strange.