Unit tested to ensure we are creating a self-consistent peak. Expose to python and unit test there too.