Fixed error when passing byte string to view.replace. Implemented vim behavior of deselecting piped input and placing cursor at start (works for multiple selections).
Made filter thru shell string decoding fix linux-specific. Created test case for linux and osx.
merge with remote