Make get-git-id work event in detached HEAD.
Explain changes in comments.
Merge pull request #1284 from rdicosmo/fix-get-git-version

Fix get git version
Added variables for holding name of external solver
Document OPAMEXTERNALSOLVER environment variable
Add external_solver command-line option.
Use solver parameters to determine the name of the chosen external solver
Merge pull request #1286 from rdicosmo/add-solver-cmdline-option

Make external solver command settable via cmdline or env variable
Save version_map in cudf file as comments
Merge pull request #1289 from lefessan/save-versions-map

Save version_map in cudf file as comments
Restored lazy evaluation of external solver presence
Better orphans computation

Previous version was too expensive (calling the solver), and too strict
(duplicated checks done at other places).

This should be faster and easier to understand.
Real read/write locks using Unix.lockf

Ref: #1212 (I still got a Pervasives.exit 64 from Dose: algo/depsolver.ml: the package encoding global constraints can't be in conflict when trying to _display_ the conflicts with internal solver)
Ref: #457 (should be safe to take a read lock until solution application, then a write lock. If this is still needed ; breaks current `make tests`)
Closes #434 completely, as there should not ever be a need to reset locks anymore.
cleanup OpamClient.update: don't pass string as OpamRepositoryName.t

wait until we can decide to convert the argument to repo or package name
More robust handling of pinning commands

Handles re-installation and re-pinning with metadata changes
Interactive handling of pinned package metadata updates
Improved stats display
Merge pull request #1298 from OCamlPro/fix-orphans-again

Fix performance and simplify orphans computation
Merge pull request #1300 from OCamlPro/cleanup-overlays

Sanitize pinned package handling
Fixed '??' versions appearing in conflicts messages