Dead code elimination dead end: OCaml doesn't tree-shake

My (unsuccessful) investigation into removing unused code from the compiled output of OCaml, including all the web archeology and deep-dive into how native binaries are formed.