add codemirror + skeletal web interface