Include padding-top in <body> for the navbar only if the navbar is visible.

This eliminates the excessive whitespace at the top of the login page.
Locale dropdown in Devise views now shows the current locale and flag in the dropdown button, instead of a generic "Language" text.
Moved locale dropdown to the top right of the devise layout.
Static index page now has a locale dropdown.
WIP: add locale dropdown to registration and account edit forms.
Finishing touches to the locale dropdown in the signup view.

All available locales are listed, and the currently selected one is selected by default.
Allow sending the user locale from the signup view to the devise controller.
Fixed the code that gives a default value of "en" to the user locale if an attempt is made to save a user with an unavailable locale.
Fix unit tests.
Use the current user's locale to display the app.

The order of precedence to decide the locale for the views is :

- if there is a locale URL parameter, it is used
- otherwise if a user is authenticated, use his locale
- otherwise use the first available locale in the http accept-language header
- if the accept-language contains only unavailable locales, default to english.
Locale parameter is not automatically added to the href of all links anymore.

The locale param is manually added to those links where it's necessary (mostly devise views).

The idea is that while the user is not authenticated, the locale param is added to links, so that if the user changes the locale from the dropdown the change will be preserved if he changes to another devise un-authenticated view (change password, send unlock email etc). However as soon as he's authenticated and passes to the read view, the locale used is the one set for the user, and the param is not necessary in links (in fact it could be harmful).
Locale set for the current user now takes precedence over other considerations when deciding which locale to use.
Allow users to change their language from the Edit Registration view.
Better organization of the Edit Registration form.
The edit registration view uses the "application" layout, instead of the "devise" one.

The edit registration view looked weird with both the navbar and the big image header used in other devise views. The devise layout is appropiate for views that are accessed by unauthenticated users; the edit registration view, which is accessed by authenticated users, is more suited to the application layout.

Inspired by this article of the devise wiki:

  https://github.com/plataformatec/devise/wiki/How-To%3a-Create-custom-layouts
Show the locale change dropdown in devise views and static pages only if the user is not authenticated.

For authenticated users the correct way to change the locale is through the Edit Registration form.
Restored page header to the edit registration view.
Added acceptance test for a user changing his language.