initial commit of go port.