title: What is the reason for creating IEnumerator?
body: <p><code>IEnumerator</code> contains <code>MoveNext()</code>, <code>Reset()</code> and <code>Current</code> as its members. Now assume that I have moved these methods and property to <code>IEnumerable</code> interface and removed <code>GetEnumerator()</code> method and <code>IEnumerator</code> interface.</p>
  
  <p>Now, the object of the class which implements <code>IEnumerable</code> will be able to access the methods and the property and hence can be iterated upon.</p>
  
  <ul>
  <li>Why was the above approach not followed and the problems I will face
  if I follow it? </li>
  <li>How does presence of <code>IEnumerator</code> interface solve those problems?</li>
  </ul>