revert to a blocking readline

keep timeout, but not non-blocking readline
the performance implications are too large, especially as our
limited usage should keep the duration of the lock short (hopefully)
add more optimized status lookup
consolidate proxy code
store defaults as CONSTANT