libknc: Allow NULL contexts to be passed without crashing.

The idea here is that we test for knc_ctx == NULL at the beginning of
each exposed API element to allow the programmer to call multiple calls
only checking the errors at the end.  As such:

	ctx = knc_ctx_init();
	knc_set_opt(ctx, KNC_OPT_NOPRIVACY, 1);
	...
	knc_accept(ctx);
	knc_authenticate(ctx);

	if (knc_error(ctx))
		/* deal with error */

Works even if knc_ctx_init() returns NULL.