Re-factor HttpListener Error handling, make DRY + don't close response on errors