update builtinim/utils.py and add builtinim/peekable.py for a iter that can look forward.