code: public final Futures delete( Key<Job> job_key, Futures fs ) {
      if( _key != null ) {
        Log.debug("lock-then-delete "+_key+" by job "+job_key);
        new PriorWriteLock(job_key).invoke(_key);
      }
      return remove(fs);
    }
docs: Write-lock 'this' and delete.
  Throws IAE if the _key is already locked.
  
  Subclasses that need custom deletion logic should override {@link #remove_impl(Futures)}.