Cached search indexes

Search indexes are now cached in localStorage, keyed by the last modified date contained in
cards.json.

Shaves half a second off of load time. Booya.