add fast path to FmtStr.from_str
ability to fake input for testing
Merge branch 'faked-input' into need-for-speed
FmtStr getitem optimization

bpython-scroll speedtest runs in 60% of the time

Performance might be slightly worse for fmtstrs that stick around for a
bit - they're no longer being cleaned and combined via from_str on
__getitem__.
just fix some tests