add basic support for modular scale

fixes #13