testdata: add timeline-2.log

New events core_commit_damage and core_flush_damage.

Recorded on X11-backend, single output, no windows, just hovering over
the panel buttons.
add proper command line parsing
Makefile: add demo target, change svg names
fix handling of timespec 0,0

timespec 0,0 means "the beginning of graph", but timespec_sub_to_nsec()
was underflowing for svg_get_x(ctx, {0, 0}). Fix it to return 0 nsecs,
which then gets properly clamped in svg_get_x_from_nsec().

is_in_range() can now rely on timespec_sub_to_nsec() to now underflow.