WIP conversion of IsoSampleTableBox access point logic to use AccessPoint class instead of structure

All the methods in IsoSampleTableBox now use an AccessPoint class which is
 derived from IsoSampleTableBox. And get_random_access_points() now operates
 the same as IsoTrackRunBox.get_random_access_points().

The AccessPoint logic is starting to coalesce (evidenced in the implementation
 of the print_access_points test).

Confirmed that this version is still able to calculate access points in
 both the fragmented and non-fragmented boxes.