Add secondary sorting on events list.

Some events can show up with the exact same timestamp, causing their order to
sometimes change when queried over the API multiple times. Add some additional
sorting on target, type, and event ID. The problem could theoretically still
occur if somehow the same entity has the same type of event occuring at the
exact same millisecond, but this should be extremely unlikely.