implemented option to change direction of MSB-LSB within a byte.  Also implemented allowance for abitrary canvas size in the direction parallel to the byte direction ( for instance, if the bytes run vertically, the width need not be a multiple of 8 ) . There is a bug here where the size of the canvase may increase unnecessarily when the canvas is resized. Will be fixed soon.