code: public static RaftAgent fromConfigurationObject(RaftConfiguration configuration, RaftListener raftListener) {
          RaftConfigurationLoader.validate(configuration);
          return new RaftAgent(configuration, raftListener);
      }
docs: Create an instance of {@code RaftAgent} from a {@code RaftConfiguration} object.
  This method can be used when the {@code RaftAgent} configuration is part of a larger configuration.
  
  @param configuration instance of {@code RaftConfiguration} with the configuration to be used.
  This object will be validated
  @param raftListener instance of {@code RaftListener} that will be notified of events from the Raft cluster
  @return valid {@code RaftAgent} that can be used to connect to, and (if leader),
  replicate {@link Command} instances to the Raft cluster