Use exceptions instead of calls to Piwik_ExitWithMessage

As title. Also includes refactoring Piwik_ExitWithMessage so no echo-ing or exit-ing is done by the function (function is renamed). Includes modification to Log.php so it will work even if config is empty. Finally, includes event that allows modification of error page contents.

Thoughts and reviews are welcome (cc @mattab @mnapoli @tsteur ).

Tests I did:

* check config.php exceptions result in correct error page
* Filechecks.php (check changed code results in same behavior)
* FrontController::init() (check changed code results in same behavior)
* Log succeeds when no config available.
* Controller.php (check changed code results in same behavior)
* minimum php version warning (check error message displayed the same)
* CorePluginsAdmin controller (check changed code results in same behavior)
* installation (check works)
+1 unless I'm missing something