Unit (parameter) rework to fix some broken features.
This issue primarily acts as a reminder to rethink the concept of unit
and its related parameters. Currently, some of a unit
's properties are defined by parameters at the p_unit(unit, param_unit)
level, while others are defined at the p_gnu(grid, node, unit, param_gnu)
level. This occasionally results in problems with how to define some more tricky units
, like ones with minimum loads and optional inputs/outputs (#87 (closed)).
This issue is somewhat of a continuation of issue #87 (closed), but has a lot in common with #95 (closed), and potentially even #76 (closed) and #61.