Fix all jshint errors that are really errors.
DRY in path_line.html.
Turn on template autoescaping, both server- and client-side. Repair bug 974626.

Add a few |safes to templates that are used on the client side, because there's no Markup class equivalent there. Oh well. We'll just have to be careful.

Change the protocol for plugins to say "html" instead of "text" in context menu hashes, since that *is* HTML, and they're responsible for escaping it. (It's HTML because that's what it has to be for the JS to bold the "Search for substring *such_and_such*" item.) This required bumping the format version.

Also fix a few places where URL quoting wasn't right. I doubt I got all of these. In particular, I think querystrings are supposed to have + instead of %20.
Fix markup error in templates/file.html.
Reduce the format version and add a backward-compatibility hack for the context menus.

We're having trouble building a new instance in production due to a comm-central failure, and I want to get an earlier fix to deploy.
Fix the direct-result regex so the bubble shows when you do a direct search for "foo" and that's a filename.

Also improve the case regex.
Correct a TypeError on empty files.

This *really* fixes the lack of a direct-result bubble on searches for "foo" in moz-central.