Djsopnet: add command to check database integrity
Scaffold CATSOP results browsing widget
Djsopnet: fix slice retrieval view
Catsop widget: basic slice table views

Retrieve and display slices for the block at the center of the active
stack view.
Catsop widget: double clicks moves stack to slice
Catsop widget: display image mask for active slice
Djsopnet: fix subpixel locations block retrieval
Catsop widget: color active slice with CSS blend

Note that the CATSOP layer CSS is in the same folder as the layer JS
file, since these files will have to be reorganized anyway when merging
with upstream static asset reorganization.
Djsopnet: fix conflict set retrieval view
Catsop widget: display conflicts for active slice
Djsopnet: serialize hashes as strings

Although 382aa6edfdcb521921a62f04b2c16a0bd09334f5 made hashes serialize
to JSON correctly, they were serialized as numerics. Javascript only
supports 53 bit integers (because of float mantissa), so the hashes were
losing significant digits. Instead cast to string when converting from
PostgreSQL IDs to hashes.
Catsop widget: list conflict slices

List conflict slices in the slices table and highlight the conflict
slice mask when hovering over it in the widget table. Note that slice
loading is now very slow, because while prefetching the conflict slice
sets in django caches them correctly, each conflict set lookup during
serialization still generates a query that is logged and printed by the
debug server.
Catsop widget: fix slice mask tiling when zoomed
Catsop widget: indicate slices in solution
Catsop layer: indicate slices in solution
Djsopnet: retrieves slices without conflicts