Fixed up nio implementation, move java source to a dedicated tree
Added go implementation