Adds a variant-type filter

Also correctly calculates true/false/pos/neg etc for SVs.
There's also `.toLocaleString()` for adding commas (or whatever is appropriate for the user).