Fix compilation error with "void setnetgrent" / "void endnetgrent"

Code assume that the functions "setnetgrent" and "endnetgrent" return
int. On some platform (some bsd, android, ...) the return type is void.
This patch fix the compilation issue by testing return type with autoconf
add a test for bionic before including netinet/ip.h
Cpu, load and process gathering monitoring unit tests
Avoid appending empty include dir to CPPFLAGS

Previously, this resulted in invalid compile options such as the following tokyocabinet test:
gcc -o conftest -pthread -g -O2 -O2 -DNDEBUG   -I/usr/local/include -I    conftest.c -ltokyocabinet
Fix file descriptors leaks
Redmine#3273: acceptance test for lsdir()
Send warning/error console output to stderr
Remove iteration state from Rlist
Remove IsDataType, use DataTypeFromString
Remove CopyLocalizedScalarsToBundleScope, use CopyLocalizedReferencesToBundleScope
Add JsonIteratorHasMore
Add StringFromDouble
Add new data type 'container', function readjson, simple acceptance test
Add more readjson acceptance tests from Ted
Merge pull request #896 from sigurdteigen/feature/json

Feature/json
Add function parsejson, acceptance test
RvalDestroy must destroy container rvals.

default switch case considered harmful.
JSON API cleanup
Code to parse CSV-formatted strings (redmine feature #3272)
Fixing a problem with dlclose and avahi

In situations where dlopen does not fail but does not load the library,
the handle will be NULL (see issue 3337 in Redmine).

This fix checks if avahi_handle is not NULL before calling dlclose in order
to avoid the agent from crashing unnecessarily.

Once this is integrated into master this needs to be cherry-picked into 3.5.x.