Simplified direction logic to take into account that old_dir is signed, so the direction is simply the sign of the new direction. Also latched the output of the divider on ready to get ISIM to shut up about metavalues