let us pass arguments to build.sh
allow static analysis of programs with no cxx sources
allow passing NULL allocator for free
let us free allocated values in a polymorphic manner

by tracking what allocator was registered with them
use designated initializers

by default the rest is static initialized
remove allocator from reducer interface
remove waste in composing reducer
simplify composing transducer