Use OrderedDict within Builder in order to gain predictable key ordering when rendering as JSON
Remove empty lists in OrderedDict constructors