Add some default configuration key used with the port to flask-openid
Add the login template where the user can enter his/her openid
Update the requirements
Contributing just requires an openid account and some modifications wrt the submitter name

The submitter is the user that logged in and is uploading the artwork. If it comes from
Fedora, then it's a username, otherwise it's the user email which is most likely the most
stable information we can retrieve from an OpenID server.
Fill in the form only via the information provided by the user, otherwise let it be
Update the master template to adjust when a user is logged in
Add a login_required decorator and adjust the other ones for user not logging in via FAS
Add the different login options
With the port to flask-openid we need to make sure g.auth exists for the tests
We must be sure g.auth exists before checking g.auth.logged_in otherwise the tests fail
When setting a user, set g.auth as well and keep g.auth.logged_in as False as the user is using FAS
Adjust the unit-tests to the new login and logout pages
Add missing closing bracket
Add test for the redirection of /admin/cache
Add a context to test w/ regular OpenID user
Let's not crash if there is no g.fas_user but a g.auth
Test uploading a file under a regular OpenID user
Update DB model

The unique constraint is for a certain file in a certain election

In other words the user is not allowed to submit twice the same artwork but their can
be multiple artwork with the same title.
Since only election - filename are unique, we do not need to check the title
Adjust the internal API so that it checks the filename rather than the election/filename/title combination