Touchup

Adds docs for s_client, s_server, and SSL_CTX_use_serverinfo.
 
Added "-1" callback return value to skip sending the extension.

Fixed bug where serverinfo ClientHello extensions were allowed to be nonempty.

Fixed bug where serverinfo callback would return empty extension (instead of skipping the extension) in the case where serverinfo data isn't present for the selected certificate type, but the ClientHello triggers the extension callback.

Changed NULL second server callback to skip extension, instead of sending empty extension data.  (Note that a NULL first client callback sends an empty extension.  So this may seem a little inconsistent, but I think it's the most useful defaults - e.g. if a NULL first client callback omitted the extension it would be useless.)
 
Added tests.
 
Renames serverinfo_validate() -> serverinfo_process_buffers() since this function registers callbacks as well as validates.
 
Changed serverinfo callback to handle errors from serverinfo_find_extension(), instead of ignoring them.