Changes the error handler so that error is displayed only if display_error has been set

- print_r() has been shifted to error_log(var_export(exception))
Shifts from echoing the 404 to a 404 handler

- Now if you have defined a 404 handler it will activated in case if route is not found
- else it will send a 404 header