Allow raising specific exceptions for rendering unauthorized/other responses

I've create this pull-request to enable raising a `WeberControllerException` to make data processing and rendering responses such as unauthorized (401) or not found (404) to stop the continuation of the rest of the action from the controller. I'll be adding another commit for documentation as long as this concept is approved to be merged, but the code below is a simple example of how this can be used. I created this for a project that I'm building using weber where I have authentication, but I want to verify the session value and if that fails immediately render 401 without continuing the function.

```elixir
defmodule TestTestTest.Exceptions do
  use Weber.Controller

  layout false

  render_when_raise :unknown, {:text, 500, "An unknown error occurred", []}
  render_when_raise :unauthorized, {:text, 401, "Unauthorized", []}

  def unauthorized_action([], _conn) do
    if true do
      raise_and_render :unauthorized
    end
    {:json, 200, [], []}
  end

  def error_500_action([], _conn) do
    raise_and_render :unknown
    {:json, 200, [], []}
  end

end
```