Use external "deriving"

This pull request removes the bundled `deriving` library, introducing a dependency on the [version maintained by the Ocsigen project][ocsigen-deriving] instead.  The main drawback is the extra dependency; the main benefit is that a few thousand lines of code disappear.

The easiest way to install the external `deriving` is via [OPAM].  The process goes something like this:

1. Install OPAM (see e.g. [these instructions][opam-install-instructions])

2. Install a recent OCaml compiler:
   ```bash
   $ opam switch install 4.01.0
   $ eval `opam config env`
   ```

3. Install the [deriving package][opam-deriving]:
   ```bash
   $ opam install deriving
   ```

4. Build Links:
   ```bash
   make
   ```
[opam-install-instructions]: http://opam.ocaml.org/doc/Quick_Install.html
[opam-deriving]: https://opam.ocaml.org/packages/deriving/deriving.0.6.2/
[opam]: https://opam.ocaml.org/
[ocsigen-deriving]: https://github.com/ocsigen/deriving