correct title! chain -> wave shaper
Refactor canvas plotting code to its own module