Hoisted timespan making logic into new abstract TimespanMaker class.
Added new DependentTimespanMaker class.
Added new FloodedTimespanMaker class.