call Evaluate for inputs/outputs
prepare for cleaning up idents

Actually doing this costs >20 ms with the currenct code! D:

Just add the member for now (seems to cost 1ms already).

Evalstring distribution:
  56833 clean (just strings)
  13064 cleaned (contain $$, etc), 7510 of those are unique
  1521 vars (contain var refs)

Of the cacheable strings that need cleaning, several are fairly long
(e.g. long "defines = -DFOO -DBAR" blocks with $-newline escapes), so
it looks like sharing the escaping via atoms might be worth it.
try to tweak CleanedUpSlow, not much luck yet
delete slower vector-based code. malloc-based path still slow tho
simplify CleanedUpSlow more, still not faster