code: public <T, U> ExecutionChain runOnBackgroundThread(Task<T, U> task) {
          runOnThread(Context.Type.BACKGROUND, task);
          return this;
      }
docs: Add a {@link Task} to be run on a {@link org.gearvrf.utility.Threads#spawn(Runnable)
  background thread}. It will be run after all Tasks added prior to this
  call.
  
  @param task
  {@code Task} to run
  @return Reference to the {@code ExecutionChain}.
  @throws IllegalStateException
  if the chain of execution has already been {@link #execute()
  started}.