Stash / pop locations.

Instead of relying on :back for redirect, we store a single location
in session to redirect to after certain actions.

Example:
 * User tries to make an appointment, but a login is required.
 * Requested path is stashed.
 * User logs in, and is redirected to the requested path.

However, unlike Rails' :back redirect, when a stashed location is not
available we simply redirect to root.