test: Add some specs for the viml function `system()`

These new specs replace src/nvim/testdir/test_system
travis: Fix clang-asan to always display memory errors

Always check the logs in case of test failures(which would happen when ASAN
finds an error since it will abort Nvim).

Also run the 'oldtest' target from the gcc-32.sh script
eval: Fix `save_tv_as_string` to handle non-string types
wstream/shell: Fix memory errors caused by os_system

The os_system function uses a write callback to close the input stream when the
write completes, but this causes a memory error because the callback is invoked
right before the stream is freed by the caller.

This fixes the problem by removing the callback set by os_system. Instead, it
calls job_close_in immediately after writing(the stream will only close after
the write completes). The 'pending' parameter was also removed from the
'write_cb' as it should be hidden by the wstream module.

While the `wstream_set_write_cb` and `job_write_cb` are no longer used, they
will remain in the codebase for future use.