initial draft (non-working) of discrete kameleon class and unit tests