Only accept the three old algorithms as digests in <implementation> IDs

There's no need to issue a warning just because the ID contains an "="
sign.
Allow absolute local paths in local implementations
Added initial windows_distribution

This one only falls back to Python if you ask it for a package the
Python version knows how to check. Otherwise, it successfully returns
an empty list.
Use the OCaml solver by default
Better test for availability of cached implementations

Instead of statting each digest we want to check, read in all the cache
directories at the start of the solve and build a hashtable to test against.
Build all the targets at once

Faster than invoking ocamlbuild multiple times.
Added stores.mli
Implemented get_package_impls for Debian
Moved some more modules under Support
Moved library functions into a new "Zeroinstall" module

Only code for handling the command-line remains at the top-level.
Unit tests now pass on Windows
Use OCaml to show help when no sub-command is given

Before, we switched to Python, which no longer has all the commands.
Renamed Run module to Exec

Avoids confusion with "0install run" command.
OCaml "0install run" now uses the OCaml solver

Running apps and selections with no extra options was already working,
but now we also support passing an interface URI or extra options
without falling back to Python.
Added OCaml implementation of "0install download"
Fixed problem on Debian when dpkg cache didn't exist
Allow running unit-tests under /var
Added OCaml "0install man" command
Added OCaml "0install --version"
OCaml support for "0install run --main"