simplified FriendlyError status handling

we're only operating on `HTTPException`s here, so it's safe to rely on
the `status` semantics
extended friendly error handling to 404s and 405s

unfortunately, this is a bit awkward (note the inline comment)