Increased the number of flattenings allowed in prop_naive
Handle #par{} in key and value functions
Handle duplicated keys in subst_dict:from_list/1

We are now committing to the value type gb_sets
Prune substitutions in add_par_subst (big win!)

Defined cleaner functions to work with dictionaries.
There are some possibly unnecessary set/list conversions
back and forth that should be looked at.
Pulled out code to add a par command to a dictionary

We'll need it when changing final to a dict