Make RepresentationMixin work on classes with no default initializer args (#1314)
Make RepresentationMixin work on classes with no default initializer args (#1314)

Fixes #1124

Two issues are fixed:

When there are no defaults, None is used instead of an empty tuple,
which breaks the zip of args and defaults.

When defaults is an empty dict, the sub-section of the args list
is taken with -0, which does not have the intended effect of dropping
no args. This is replaced with a special case `if`.
Parsl/parsl,Parsl/parsl,Parsl/parsl,Parsl/parsl