Hide `sdshdr' structure with flexible array member.

The idea is that `sds.c' gets compiled with a C99 compliant compiler, and a
C++ program then uses it.  To do so, it needs access to `sds.h', and this
commit makes the header file valid C++ code.

Note that this patch omits the `extern "C"' guard necessary for C++, since
it is already available in other push requests.
Merge branch 'hide_fam'

Conflicts:
	sds.h