core 109.36.00-rc1

## Pa_ounit

- Simplified so that it does not generate unnecessary top-level bindings.

  It had been hiding quite a few `unused import` warnings.

## Core_kernel

- Made `Hashtbl.Poly.hash` equal `Caml.Hashtbl.hash`, and changed changed `String.hash` and `Float.hash` to match OCaml's hash function.

  Previously, `Core.Poly.hash` had been defined as:

  ```ocaml
  let hash x = hash_param 10 100 x
  ```

  This fell out of sync with OCaml's hash function, and was providing worse hash values.
  
- Fixed `Obj_array.singleton` to never create a float array.

  Also made it clearer that `Obj_array.copy` could never create a float
  array.

- Changed `Pool.create` to allow zero-length pools.

  Previously, `Pool.create ~capacity:0` had raised, which made it easy
  to write code that blows up on edge cases for no apparent reason.  For
  example, `Heap.copy` was written in a way that copying an empty heap
  would blow up (regardless of its capacity), and `Heap.of_array` would
  also blow up on an empty array.
  
- Added `String.split_lines`.

  ```ocaml
  (** [split_lines t] returns the list of lines that comprise [t].  The lines do
      not include the trailing ["\n"] or ["\r\n"]. *)
  val split_lines : t -> t list
  ```

## Core_extended

- In `Sexp` module, added ability to expand and compress bash-like brace wildcards.

## Textutils

- In `Ascii_table` module, added support for displaying table using ASCII characters instead of Unicode.

  This is motivated by the need to use `Core_bench` in contexts where
  the extended ASCII character set is not suitable for displaying
  tables.

  The default style is the following:

  ```
  ┌─────────────────┬───────────┬──────────┐
  │ Name            │ Time (ns) │ % of max │
  ├─────────────────┼───────────┼──────────┤
  │ quick_stat      │     93.11 │   100.00 │
  │ counters        │     33.24 │    35.70 │
  │ allocated_bytes │     37.03 │    39.77 │
  └─────────────────┴───────────┴──────────┘
  ```

  The new style is as follows:

  ```
  $ ./test_bench.exe gc -q 0.5 -ascii
  Estimated testing time 1.5s (change using -quota SECS).
                                            
    Name              Time (ns)   % of max  
   ----------------- ----------- ---------- 
    quick_stat            93.17     100.00  
    counters              34.56      37.09  
    allocated_bytes       37.06      39.78
  ```

## Async_unix

- Added `Process.run_lines`, which runs a process and returns stdout as a list of strings.