Add different stack allocators.

It is now possible to use a memory mapped stack that throws a SIGSEV if thes coroutine stacks are exhausted.
4 jobs from coninuation in 29 seconds (queued for 1 second)
Status Job ID Name Coverage
  Build
passed #3589
build_cmake

00:16

 
  Test
failed #3590
run_tests

00:13

 
  Sanitizer
skipped #3592
run_address_sanitizer
skipped #3591
run_thread_sanitizer
 
Test run_tests
compilation terminated.
make[2]: *** [lib/pls/CMakeFiles/pls.dir/src/internal/base/tas_spin_lock.cpp.o] Error 1
lib/pls/CMakeFiles/pls.dir/build.make:62: recipe for target 'lib/pls/CMakeFiles/pls.dir/src/internal/base/tas_spin_lock.cpp.o' failed
make[1]: *** [lib/pls/CMakeFiles/pls.dir/all] Error 2
CMakeFiles/Makefile2:250: recipe for target 'lib/pls/CMakeFiles/pls.dir/all' failed
Makefile:140: recipe for target 'all' failed
make: *** [all] Error 2
./ci_scripts/run_tests.sh: line 9: ./bin/tests: No such file or directory
ERROR: Job failed: exit code 1