Add a basic download preview implementation

Based on the D2 mockup renders.

Issue #252.
models/search: Select all fields in searches

Issue #252.
views/download: Wrap results in preview-frame

Issue #252.
js/download: Import Stefan Goessner's json2xml

Issue #252.
js/download: Pettify XML output

Insert newlines and tab indentation.

Issue #252.
js/download: Implement XML format output

Issue #252.
js/download: Add 'available_at' attribute to data

Issue #252.
scripts: Add a run.sh script

The purpose of this is to reduce the latency between launching emacs and
getting on with some useful hacking.
js/download: Replace all underscources in headers

Previously, we were only escaping the first underscore in a header
label, so "pi_range_min" became "pi range_min".

Issue #252.
download: Use excel-style table styling

Issue #252.
js/download: Generate table before populating

Issue #215.
resources/js: Import FileSaver.js

See: https://github.com/eligrey/FileSaver.js
MIT/X11 license
js/download: Implement a json2csv() convertor

Issue #215.
js/download: Implement download functionality

Issue #215.
js/download: Escape ampersand in XML output

Issue #215.
js/download: Tiny style fix
js/download: Set "record" property names in XML

Issue #215.
Merge branch 'issue/252'