Fix 1410 and make querystring schema more intuitive.

Fixes #1410 - setting the `?lang` parameter was leading to the next request's language, without the `?lang` parameter to use the previous request's `?lang` parameter value.  Bad!

Also does some querystring arg updates: `set_language` changed to `set_user_language`, and `set_default_language` to `set_server_language`.

Finally, made sure that setting URLs are defined in `base.html`, and used as constants inside the code, so these schema changes can be done in one place.