[backends/vala] Make sure to push/pop codecontext
[backends/vala] Use streams instead of channels