Revert "Revert "unstable commit, working on distributing code""

This reverts commit 89a90f449e233ae4e4b4325388f60dae61a23e0f.