Squashed 'third_party/linenoise/' content from commit e0f15a6

git-subtree-dir: third_party/linenoise
git-subtree-split: e0f15a65d6531a93942e413f3110f52ad851806e
Merge commit '0285095b486e185fa8c8918ba53391d46e9c14f1' as 'third_party/linenoise'
Replace readline with the BSD licensed linenoise library
Due to the use of atomics, certain race conditions occur when a lower priority thread acquires A, then de-schedules, and a real-time priority thread tries to acquire A. Since the real-time thread won't stop trying to acquire A until it is de-scheduled (which it will not be) we end up in a cpu-stuck state. This patch helps avoid a common occurence of this on low-core count machines. It does not resolve the underlying issue.
Merge pull request #223 from cmaloney/no-readline

No readline
Merge pull request #244 from jmlvanre/low-core-issue

Low-core count race condition