[Console] fix and refactor exit code handling
Merge branch '2.1' into 2.2

* 2.1:
  [Console] fix and refactor exit code handling
Merge branch '2.2' into 2.3

* 2.2:
  [Console] fix and refactor exit code handling

Conflicts:
	src/Symfony/Component/Console/Application.php