Made wire_func_t not have virtual functions.
Maybe maybe_wire_func_t use composition instead of private inheritance.
Renamed to maybe_wire_func_t::compile_wire_func_or_null.