Add varargs to ason_read

We can now do ason_read("?i", 6); to create a new ASON value which is numeric
and of value 6.

Signed-off-by: Casey Dahlin <cdahlin@redhat.com>
Begin tracking object order

Reduction needs to be order-aware to exorcise the last few gremlins, so ason_t
is growing an order field.

Signed-off-by: Casey Dahlin <cdahlin@redhat.com>
ason_reduce now returns the resulting object's order

Signed-off-by: Casey Dahlin <cdahlin@redhat.com>
Always skip reduction for known-order objects

Signed-off-by: Casey Dahlin <cdahlin@redhat.com>
Reduce child objects at start of ason_reduce

Signed-off-by: Casey Dahlin <cdahlin@redhat.com>
Correctly check return of ason_reduce for equality check

Signed-off-by: Casey Dahlin <cdahlin@redhat.com>
Simplify reduction of equality values

Signed-off-by: Casey Dahlin <cdahlin@redhat.com>
Set order in ason_make_empty

Signed-off-by: Casey Dahlin <cdahlin@redhat.com>
Remove catch-all order change in ason_reduce

Signed-off-by: Casey Dahlin <cdahlin@redhat.com>
Add clarifying short-circuit return to ason_reduce

Signed-off-by: Casey Dahlin <cdahlin@redhat.com>
Clean up list reduction

Signed-off-by: Casey Dahlin <cdahlin@redhat.com>
Fix up reduction of complements

Signed-off-by: Casey Dahlin <cdahlin@redhat.com>
Clean up object reduction

Signed-off-by: Casey Dahlin <cdahlin@redhat.com>
Make union reduction set order

Signed-off-by: Casey Dahlin <cdahlin@redhat.com>
Cleanup ason_reduce_join

Signed-off-by: Casey Dahlin <cdahlin@redhat.com>
Set order correctly in list intersect

Signed-off-by: Casey Dahlin <cdahlin@redhat.com>
Set order correctly in object_intersect_join

Signed-off-by: Casey Dahlin <cdahlin@redhat.com>
Make ason_reduce_intersect adjust order

Signed-off-by: Casey Dahlin <cdahlin@redhat.com>