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 ).
when config fails to be created there is no information in the config structure, but this code path is still executed (because of FrontController::__destruct). Code needs to default value to false in this case.