libmn: redesign API to be simpler

We were going for a more abstract "actor"/CSP like API so that
libmn would be portable to many different types of platforms
(multiple machines/address spaces) but that seems to be an API
for a higher level. libmn sits at a lower level and will always
assume the same platform model, i.e. one address space.

Now ports only pass pointers, and we continue to bootstrap new
proclets with a pointer.
Rename "proclet" to "thread" everywhere.

To be consistent with the previous commit,
a3f37bdc09fb5065f937ec041c4d20f36443e249, proclets are now
called mn_threads.