Support FunctionCall for builders, refactor Op to be a functioncall