 
   Notice we never call the server callbacks directly, they are called
   by OTP whenever we interact with the server. **cast** messages are
-  asynchronous while **call** ones are synchronous.  In the case of
-  GenServer's, there are 8 different values a callback such as
+  asynchronous while **call** ones are synchronous. For a
+  GenServer, there are 8 different values a callback such as
   `handle_call` or `handle_cast` can return:
 
       { :reply, reply, new_state }

        handle_cast: 2, terminate: 2, code_change: 3]
    end
  end
end
  * `code_change(old_vsn, state, extra)` - called when the application
    code is being upgraded live (hot code swap);

  Starting and sending messages to the GenServer is done
  via Erlang's `:gen_server` module. For more information,
  please refer to the following:

  * http://www.erlang.org/doc/man/gen_server.html
  * http://www.erlang.org/doc/design_principles/gen_server_concepts.html
  * http://learnyousomeerlang.com/clients-and-servers
  """

  @doc false
