add unix socket support (still lacks some tests, though)