1st public commit. It works. Tests pass. Example is not really complete.