I'm considering to remove the non-threaded code. The threaded code should be able to run without threads with minor adjustments (replacing thread-safe operations with equivalent unsafe ones or NULL operations as appropriate), and we wouldn't have two sets of code to keep working at the same time. There may still be a small time-penalty involved. Anybody with a strong opinion against this?