sig
  val all : (int * (string * runner)) list ref
  val register : string -> int -> runner -> unit
  val of_name : string -> runner
  val choice : (int, unit -> unit) Hashtbl.t -> string * runner
  val preset : (string * string) list -> (string * string) list
end