Introduced LMShiftOperation to encapsulate the variables controlling the shift algorithms in LMBoard; (I'd kill for a Java enum right now)