 
   def port(), do: GenServer.call __MODULE__, :port
 
-  ## Server
+  #
+  # GenServer Implementation - Server
+  #
 
   def init([builder, dir, site, portnum]) do
     do_rebuild builder

  @spec do_rebuild(pid) :: :ok

  defp do_rebuild(builder) do
    case SiteBuilder.build builder, :parallel do
      {:ok, _} -> :ok
      error = {:error, _, _} ->
        Error.show error
        warn "Error occurred while building the website."
        warn "The website may not be displayed correctly."
    end
  end
end

  alias Serum.Error
  alias Serum.SiteBuilder

  #
  # GenServer Implementation - Client
  #

  @spec start_link(pid, String.t, String.t, pos_integer)
    :: {:ok, pid} | {:error, atom}
