Fixing memory leaks, bit by bit. Tests seem to pass.
Committing a fix that uses OCaml's garbage collector to free stuff
when there is no earthly way to refer to it again. However, the
program still runs, despite the fact that we have double frees at many
places. This gives me the creeps. I think I'm going to revert the
prior commits that made had the explicit frees.
Reverting "Fixing memory leaks, bit by bit. Tests seem to pass."
Reverting "Fixing memory leaks, bit by bit. Tests seem to pass."
Reverting "Fixing memory leaks, bit by bit. Tests seem to pass."
Reverting "Fixing memory leaks, bit by bit. Tests seem to pass."
Reverting "Fixing memory leaks, bit by bit. Tests seem to pass."
Revert "Fixing memory leaks, bit by bit. Tests seem to pass."

This reverts commit b95b03858e1dfdeb7d94bb090ce50e9a91e03f60.