some basic explanation of the processing flag
logic for moving forward/backward is sort of there ... still buggy