lib: organize
arr: lib and tests
port/chan: lib cleanup and tests
test: Chan.create
duplex: refactor / clean