C++ implementation
Starting to work on the golang implementation