Why the readline reimplementation?