multiThread: bug fix - thread indexes should start from 1 - and code cleanup (add asserts, remove ifdef-within-ifdef)