Ideas
=====
* i : install($x, $y) gives abstract set of possible installations of $x in $y
  is_empty(i) -- check if the set is co-installable
  chose(i) -- return an example installation
  ... select installations that satisfy a given condition, such as :
        - contains a given package
        - intersects a given set of packages
        - etc.

To be done
==========
* Check COMMIT/ROLLBACK
* Reverse order of dependency lists ?  Or sort them explicitly.
* Save environment
* Add variables like today, yesterday ; functions for incrementing/decrementing dates
* Requires
* Fix formatting
* Fix non-existent units
* Latest(...,set)
* Ranges as datatypes
* Add proper typing
* Pre-sort packages
* Database : add source packages !
* CNF formulas as first-class citizens

Done
====
* Global installability check
* Fix empty disjunctions
* Installability
* Display archive indexes
* Pre-depends
* Package info
* Lambda,etc.
* Replaces
* Load dependencies
* Essential, build-essential
* In libdebparser: handle errors in package names
* Sort packages and units when displaying them
* Conflicting UNITS... or extend conflicts
   -> conflict with units providing a common unit
   -> conflict with different versions of same unit
* Load sets of packages

Rejected
========
* Use /a instead of $a ?  Or find a better syntax.
* Union, intersection, ... over indexes
