code: public Opt<String> assist(String commandLine) {
          try {
              return doAssist(commandLine);
          } catch (ParseException e) {
              handleParseException(e);
          } catch (Exception e) {
              err.printThrowable(e);
          }
          return Opt.absent();
      }
docs: Provide assistance for the given command line. Assistance means 2 things:
  <ol>
  <li>Auto complete the command line</li>
  <li>Print information that is specific to the context of the command line (if the command line indicates
  that we are parsing a command, assist with information like values that were already parsed,
  next parameter to parse etc').</li>
  <li>Print suggestions for the next word to be added to the command line, if any.</li>
  </ol>
  Any output is printed as a side effect to the {@link CliOutput} this shell was constructed with.
  Returns the result of the auto complete operation that should be appended to the command line by the caller.
  
  @param commandLine Command line to provide assistance for.
  @return A value that should be appended to the command line as a result of the auto complete operation.