Various bits of scaffolding

Note: instead of needlessly passing around state there is a global
struct called DNAViewer that more or less serves as the programs core
state including: parameters, settings, raw data, etc ...