SSI/PLC support.
Better deploy script.
UI updates to search boxes
Don't allow deployment when local branch is dirty.

Also:
- Explicitly create gh-pages branch with tracking info locally.
Proper way to apply select2.

Also, fixes a hidden bug that doesn't expose itself right now, due to
the fact that Explorer is essentially a single route at present. Once we
have more than one "page", i.e. when we add a second endpoint, this bug
would have surfaced.
Use md5 to generate document IDs.