Better clean up during exception handling.

The original case was that a PersistenceException during indexing causes
subsequent runs to fail because the time limit job wasn't properly
removed. This also caused the status display to be stuck on "Running"
since the status was updated before the time limit job was set.

CSIndexJob now has a cleanUpOnException() method that will remove the
time limit job if it's there, set the status to error, and log the
exception's message and stack trace. Most of the exceptions in execute()
now calls this method.

Additional exceptions in cleanUpOnException() will be ignored mostly
except for a log entry, I assume that additional exceptions are a result
of the original exception and wouldn't just make it confusing if their
stack traces are also displayed.
Remove logback configuration update scanning.
Add progress indicator to systemconfig UI.

The progress indicator is just a count of the number of rows in the
queue and the number of rows in the files table.

The count is down by a SELECT COUNT(*) statement. My impression is that
this should be fine for medium sized tables. For large tables, a SELECT
COUNT(*) may not complete in reasonable time.
Fix files table clear when processing queue.

Resuming processing from a previously generated queue is possible, but
it wasn't working because the file list is deleted everytime we start
practice. Have limitied to only clear the list if we generated a new
queue.
Up batch processing limit to 1000 files at a time