Added link between Segment and slice to SegmentFactory
Removed entry-and exit slice, changed array to list, rewrote getWidth to take account to the actual width of slices, in Segment
Renamed SliceType to SliceDefinitionImpl and created interface SliceDefinition
Renamed SegmentFactory to SegmentDefinitionImpl and added interface SegmentDefinition
Moved generate random segment method to a new SegmentFactoryClass