Port exception handling to logging
Remove try/catch when all we want to raise the same exception again
Improve logging by using different handlers and the flask logger already present

Create the log handler sending emails for debug logs (when a large exception occured)

Create a second handler sending regular log information to stderr
Remove un-used import of SysLogHandler
Fix the edition of recursive meetings to have three buttons instead of two

Regular meetings have the two buttons model:
[Edit] [Cancel]
Recursive meetings have the three buttons model:
[Edit] [Edit all] [Cancel]

Fixes https://fedorahosted.org/fedocal/ticket/70
Add field to store the timezone of a meeting
Remove code that is not used anywhere but in the unit-tests
Fix converting the meeting from their own timezone to the user's one

And propagate the timezone information to the backend when editing/adding a meeting.
Add alembic revision to add the meeting_timezone field in the meetings table

- Tested on pg
Fix typo in configuration documentation
Update the DB model

- Remove calendar_multiple_meetings
- Remove calendar_regional_meetings
- Rename meeting_region into meeting_location
Adjust front-end and back-end library for the DB model change

This changes the output of the API a little but calling the API should be backward
compatible.

Clean the UI that calls for the LoginForm while we no-longer need it.
Adjust the unit-tests for the new DB model
Add the alembic revision script to update the db to the new model used in the app
Add link to the API in the menu and fix small typo
Add an Approved and a Denied icons that will be used in the date check function
Add endpoint to check the availability of a calendar at the specified date/time
Rework and simplify the agenda_is_free_in_future method
When creating a meeting give the option to the user to check if the agenda is free
Add unit-test to check the method agenda_is_free_in_future