title: TypeError vs InvalidArgumentException?
body: <p>What's the difference between TypeError and InvalidArgumentException in PHP 7?<br>
  When to throw TypeError and when to throw InvalidArgumentException?  </p>
  
  <p>It seems that the error is getting more like exception in PHP 7.<br>
  What's the border line that divides error and exception?</p>