remove rear seter of Segment2D
remove Segment2D.setHeadCoord()
refactor Segment2D, rename of terms

  1. Segment2D -> Segment
  2. Segment.*Head -> Segment.*Start
  3. segment.*Rear -> Semgnet.*End
deeply term refactor of segments

  1. "head" to "start"
  2. "rear" to "end"
remove AbstractSegment2D.distanceTo
remove LinearSegment2D.midPoint() and outNormal()
rename AbstractSegment2D to AbstractSegment