ose: Remove all usage of pthreads and spinlocks

A number of intricate non-documented dependencies have led to this change.

Before:
  Used pthread as mutex
  Used own impl as rw mutex
  Used native asm as spinlock
  Used pthread as MTX_Q
  Used OSE processes as threads
  Used OSE wait_fsem for the tse

After:
  Use own impl as mutex
  Use own impl as rw mutex
  Use OSE mutex as spinlock
  Use OSE mutex as MTX_Q
  Use OSE processes as threads
  Use OSE wait_fsen for the tse

All pthread api calls have been removed because we should not use the
pthread api's in a non-pthread process. We do not want to move to using
pthread threads because of performance reasons.

Ideally we would want to use OSE mutex as the mutex implementation, but we
cannot as there is not support for cond wait with OSE mutex. So we are
forced to use a non-kernel mutex which could be bad for the latency.

We can however use OSE mutex for the MTX_Q because we do need cond wait
there.

We never want to do infinite spinning outside the kernel, so both the
spinlock and rw spinlock implementation for OSE has been replaced with
mutexes.
ose: Always yield after leader update

It is possible to end up in a state where we are "spinning"
around update leader without blocking in there and then we
can starve other schedulers running on the same core.

Ideally we would only yield if there was no block in update leader
but it is quite hard to know that, so we always yield instead. If
that becomes a performance issue we'll have to look at it later.
ose: Fix a bunch of compiler warnings
ose: Implement ose_yield as inlineable
ose: Use ppdata for storing own tid
ose: Fix handle-name bug in spawndriver when spawning with slash in arguments
ose: Fix usage of unitialized variable in signal driver
ose: Add a proxy process to handle the schedulers async i/o
ose: Set processes to same priority across the beam block
     add notification if process priority differ per core.
erts: Add os:cpu_timestamp/0 for ose
ose: Port erl_mmap to OSE using create region
ose: Polish create region work
ose: Fix inlining of ethread
ose: implement dispatch in signal driver
ose: Polish testcases for signal dispatch
erts: Add comment about software prefetching
ose: Start work on routing templates and also use hash to signo lookup when routing
ose: Fix dispatch tests and bugs

Also changes dispatch linked list to be a hash
ose: Reduce number of fair yields for scheduler
ose: Enable lwsync support and we only run as priority processes