Correct polarity of `ifdef SYNTHESIS guard
Fix BlackBox null pointer dereference

...by keeping a global list of BlackBoxes, rather than per-Module.
Fix BlackBox functionality

- Don't emit Verilog for BlackBoxes
- Treat BlackBoxes as regular Modules for C++ to support behavioral models
Make BlackBox Verilog module text the empty string