Move interval storage into its own file.
Fixing small bugs in interval storage.
Adding tests for interval storage.
Make sure that have intervals of the form [start, end).
Adding an interval storage tests with three intervals.
Adding initialization with a map.
Tests to make sure overlapping superset intervals throw errors.