Clean-up OpamCompiler API
Clean-up OpamPackage API
Fixed error message
(this could be misleading when a package has been removed upstream)
Fixed man field in .install file writing
Closes 698
Merge pull request #717 from AltGr/fix-698

Fix 698
Pinned repositories with multiple authors don't have their opam metadata properly reserialized
Merge pull request #718 from dsheets/hostage-crisis

Pinned repositories with multiple authors
Propagate OpamPackage and OpamCompiler API changes
Expose OpamFilename.files which does not scan recursively the given directory
Expose checksums functions in OpamFilename
Expose OpamJson hook to check whether we want to output JSON.
Do a quick test *before* building the JSON object to check it is really needed
Map.map{,i} should be tail-recursive
Expose an API for parallel computation on lists
Refactor OpamPath API and fix its documentation
OpamRepository.pull_url now takes a full package as debug argument (instead of just a name)
Clean-up and simplify the OpamRepository API

Use the new API from OpamPackage, OpamCompiler and OpamParallel modules, and propagate the changes.
OpamState API refactoring

Now use is_xxx_installed to know if a compiler/switch/package//name is installed.
Add an optional root argument to OpamFilename.copy_in

This make it easier to recopy subdirectories.
Refactor the 'a update type