wstream: Implement wstream_set_file

It's analogous to rstream_set_file but only supports pipes(Support for regular
files may be added later). This function was added to support creating API
channels via stdout.
channel: Fix channel not being closed when the RStream reaches EOF
channel: fix channel buffer size
channel: Implement channel_from_stdio function

This function can be used to create an API channel that reads/writes from/to
stdin/stdout
api: Implement '--embedded-mode' command-line option

This option makes nvim run in "embedded mode", which creates an API channel via
stdin/stdout and disables all terminal-related code
test: Run tests in embedded mode on travis