Optimize *> and >> for Seq

Based on a discussion with Ross Paterson, use a multiplication-
by-doubling algorithm to improve asymptotic time and space
performance.