Use idiogrammatik and vcf.js from NPM

And many associated changes, including cleaning up code that used the
old APIs provided by the modules, and improving idiogram interactivity
by gainfully using the new API.
This is personal preference, but I like naming functions which return a boolean with `is`, e.g. `isRecordWithinRange`.