add test/demo of sharedlibs relocation code
VL parser and UDP updates.

Parser change: all parsers now produce vl-warning-p objects when we need to
cause a real parse error.  (Previously it was an ad-hoc msg object.)

Initial implementation of user-defined primitives:
  - Parses Verilog-2005 style UDPs (sequential and combinational)
  - Transform that handles very basic combinational UDPs
    (and converts all UDPs into modules)
  - Basic systest for some combinational UDPs

Notes and caveats:
  - We don't at all handle sequential UDPs.
  - This is a bit more permissive than it should be, e.g., we don't
    properly reject UDPs with conflicting lines.
  - I haven't looked at SystemVerilog extensions yet