locale query params for session_locale

fixes CAT-330

NOTE: *the locale for a page is inferred in a weighted order.
       session_locale is checked just before a provided context's
       account locale preference and just after the user's

Test Plan
  1. Fire up canvas with full i18n support configured
     (i.e. $ RAILS_LOAD_ALL_LOCALES=true rails server)
  2. Navigate to a page that supports localization while logged out
     such as the login screen
  3. Append the following query params to the URL in the browser
     '?session_locale=zh'
  4. Navigate to that URL and ensure the page is localized in the provided
     locale

Change-Id: I9e94d6ecfd41e77683940272aa0988c67064b602
Reviewed-on: https://gerrit.instructure.com/39844
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Ethan Gunderson <egunderson@instructure.com>
Reviewed-by: Nick Houle <nhoule@instructure.com>
Product-Review: Adam Phillipps <adam@instructure.com>
QA-Review: Adam Phillipps <adam@instructure.com>