use c++ error_code for low level functions
add string util header and test
add test input
comment
Merge branch 'devel_string_util'
Merge branch 'devel_readdir_r'
add missing include