rebuild cursor move and selection function, range create helper function added, added cycler function