Adding RESOLVING state

Adding state to handle case where client completely fills buffer and DNS
response has not yet been received. Break out common watcher rearming
and validation into reactivate_watchers() function used by both
connection_cb() and resolv_cb().

Fixes #83
Fix handling of invalid hostnames in client requests