Bidirectional Shift Register
I think a universal shift register like the sn74als299 may be what you are looking for.
This has tristate outputs and can be used in a few different modes.  

Here is a good link that goes into a fair amount of detail on how to use the above.