Improve the evaluation of filters.

* the evaluator is now typed
* type errors are displayed to the user on eval, but are not-blocking
* foo+bar:installed works again
* the hook to overwrite a package variable contents is now $OPAM_<package>_<variables> (instead of <package>_<variable> which was ambiguous)

This is related to #572