Merge pull request #4463 from ghalliday/issue9438

HPCC-9438 Fix problem with unusual joins against null datasets.

Reviewed-By: Richard Chapman <rchapman@hpccsystems.com>
HPCC-9430 Remove incorrect active datasets for unusual cases

* INDEX, DISTRIBUTED() could have a dependency on activeTable
* Any expression could have a dependency on parent from parent.child
* The record types of RULES weren't normalized to remove defaults
* Some symbols weren't removed from maxlength attributes
* Some other minor discrepancies

Has the effect of removing some incorrect warnings and removing some
duplicate meta classes for a couple of queries.

Signed-off-by: Gavin Halliday <gavin.halliday@lexisnexis.com>