Remove error value from locks and condvar initialization
On Linux, these functions cannot fail. On Windows, mutexes cannot fail
and neither can real condition varaibles (but we use events instead to
support pre-Vista versions). In practice, the needed resources are
allocated as part of the mutex structure and per-thread data.
In any case, basically none of the call sites for those functions were
checking for errors. It seems best to abort in case of error than to
hit undefined behaviour. We probably do not want to clutter the tree
with untested never used error paths.