chore: put Tcp, NamedPipes and LocalData assemblies into other assemblies to reduce number of unnecessary projects
feat: add abstractions and core of communication