Fix SubscriptionBundleTimeline events ordering so entitlement events occur prior to billing events for a specifc subscription and a guven effectiveDate

Note 1: The reordering function is actually not generic enough, but considering our events that should work. Will take a second pass to see if it can be improved.
Note 2: Need to revist algo to detect wriong condition and add warn logging

Tests should pass with that commit.