Implemented shiftIn() and shiftOut()

This doesn't require branching, so the code is more performant in a tight loop. Branching keeps you from pipelining instructions. Since this is already slow as hell, I didn't want to slow it down more than it already is.