Introduce config->emitv

Supports vectored output.  config->emitv is
optional, if the environment only supports
config->emit, then sub-frames may be emitted.

If the environment supports emitv, then
all frames are now delivered as a single
call to either config->emit or config->emitv.
Some changes to the emitv implementation

* Swapped argument order to have the count first, to match settings,
  headers, etc.

* Abstracted away the emitv callback with a spdy_emitv function, which
  takes a variable argument list of buffers/sizes and calls either emit
  or emitv (depending on which is available)

* Some minor changes for win32 support and ANSI C compliance