Fix to ODIDDataSource for calculating datarate for negative streams (cvp...

Fix to ODIDDataSource for calculating datarate for negative streams (cvp2ri-433)
    
When doing the byterate calculation (for adjusting chunk size in live streaming), the total duration was taken from the last entry of the content file regardless of direction. For negative-rate content this duration needs to be taken from the first entry.

Fixed the ODIDDataSource to pass the direction into the duration extraction functions and updated the functions to factor in duration.
Ah I just realized the other check is in the `else`, so we don't check this twice. My first question still applies: Do we need to check if this exists first?