def group_consecutives(vals, step=1):
    """Return list of consecutive lists of numbers from vals (number list).
       This list hast to be at least ordered such that N+1 > N.
       Adapted from code found on stack overflow.
       Question Thread:
       https://stackoverflow.com/questions/7352684/
       Solved by:
       https://stackoverflow.com/users/308066/dkamins
    """
    run = []
    result = [run]
    expect = None
    for v in vals:
        if v == expect or expect is None:
            run.append(v)
        else:
            run = [v]
            result.append(run)
        expect = v + step
    return result
