Support DARRAY objects as port arguments.
Clean up some NetNet variable type handling.
Handle array assignment patters through pform.

This gets us to elaboration. In the process also fix up ivl_type_t
type comparisons to do deep type comparison.
Elaborate the null darray literal as a null expression.

This leads to the correct code being generated in the vvp
code generator.
Parse/elaborate some array-patterns down to the ivl_target API.
Generate code to implement array_pattern assignment to darray

This implements the feature in the VVP code generator.
Elaborate darray new element initializer to ivl_target API
Generate code to implement new element initializers.
Handle number literals as real-valued r-values.
Add support for simple expression in darray new initializer.
Handle initialized darray of strings

This includes adding support for returning strings from functions,
adding initializing new darray with array_pattern strings, and
assigning an array_pattern of strings to a preallocated darray.
Also fix up support for initializing array with simple string
expression.
Merge branch 'x-mil11'