No need include .c in .h files, reduce the internal dependence using as ...

library, so developers can use nanomsg more easier. Export more API in alloc.h, etc. All tests passed.

nn.h
.+: NN_EXPORT void nn_abort (void)
.remove: #undef NN_EXPORT

core/global.c
.+: void nn_abort (void)

utils/err.h
.remove nn_err_abort()
.remove nn_err_stderr()
.remove int nn_err_errno()
.move macro win_assert and wsa_assert into NN_HAVE_WINDOWS's scope
.add NN_EXPORT before void nn_win_error (int err, char *buf, size_t
bufsize)

utils/err.h and tests/testutil.h
.replace nn_err_abort with nn_abort

${ROOT_DIR}/CMakeLists.txt: Add
INCLUDE_DIRECTORIES(
src
src/aio
src/core
src/utils
)

${ROOT_DIR}/src/CMakeLists.txt:
.+: FILE(GLOB_RECURSE NN_SOURCES *.c)
.+: FILE(GLOB_RECURSE NN_HEADERS *.h)
.simplify the CMakeLists.txt

tests/testutil.h
.add: #include <malloc.h>

thread.h, sleep.h stopwatch.h clock.h hash.h alloc.h list.h atomic.h
chunk.h protocols\pubsub\trie.h
.add: #include "nn.h"
.add: NN_EXPORT before interface