Provide extended timer types/options

Change-Id: Id2198d532303025114af8307bdd952d1b780058a
Reviewed-on: http://review.couchbase.org/31389
Tested-by: Mark Nunberg <mnunberg@haskalah.org>
Reviewed-by: Brett Lawson <brett19@gmail.com>
Refactor SASL negotiation

NOTE: the sockrw_flushed check has been removed from
lcb_server_has_pending because it causes test failures and is not needed
in this function. Specifically there is never a case when the server
has data to flush and does _not_ have a pending command somewhere. Even
if it did have data to flush, we shouldn't hold up the event loop for
that anyway.

Additionally, the negotiation callback will reset the buffers, ensuring
that if the connection's output buffer is still pending, it will be set
on V1 plugins

Change-Id: I4f291aa819360235eaaa8fad7008772abceef496
Reviewed-on: http://review.couchbase.org/31406
Reviewed-by: Brett Lawson <brett19@gmail.com>
Tested-by: Mark Nunberg <mnunberg@haskalah.org>
Remove 'cookie.c'

This file contained a simple set/get function which didn't warrant its
own file.

Change-Id: I7cb82f55c84794f501c398879b1b99eb8408652b
Reviewed-on: http://review.couchbase.org/31423
Tested-by: Mark Nunberg <mnunberg@haskalah.org>
Reviewed-by: Brett Lawson <brett19@gmail.com>
Create settings structure

Change-Id: I91a83f6e2655dc5100647651f962aaf2b1af637f
Reviewed-on: http://review.couchbase.org/31407
Reviewed-by: Brett Lawson <brett19@gmail.com>
Tested-by: Mark Nunberg <mnunberg@haskalah.org>