add tests for string_is_null_or_empty
add stub client.c/h
tidy header guards
free addrinfo earlier to prevent needing to do it twice