Since the original "Value" class is gone, it doesn't make sense anymore
to refer to that name. Now it's simply an "interface{}", so the name
Interface is more suited.
Move the predicates to a "predicates" package, to simplify the
structure. This is purely mechanical change. Better documentation for
the package will come next, as well as a few other changes.