QueueCtrl: Add claim buttons (and display queue as a table)

Now you can click the claim button to claim pieces in the queue view.
I use toISOString [1] to get current date strings, and the 'update'
command [2] to post the new information to Elasticsearch.

I can't figure out why:

  .then(function(result) {
    $scope.search();
  }

doesn't work, so I've just dropped in a hack $timeout.  Perhaps
there's some time between Elasticsearch returning "200 OK" on the
update and actually regenerating the index?  In any case, this short
delay seems to work.  The only problem is that claimed items are
shunted to the back of our arbitrarily-ordered search results (perhaps
they are ordered by edit-time?).

[1]: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toISOString
     Supported by major browsers and IE 9+.  Specified in ECMAScript
     5.1.
[2]: http://www.elasticsearch.org/guide/en/elasticsearch/client/javascript-api/current/api-reference.html#api-update