Weboob does handle the raised exceptions when fetching housing posts
through the `WebNip` class. However, when fetching details, we directly
call the Weboob backend method and no exceptions handling is done.
When importing data with a `crontask`, websites may be offline for some
time, especially at night, then leading to a failure in import process.
Let's just handle such exceptions so that an offline website does not
break the whole import process. Details from the temporary offline
websites which could not be fetched will be fetched at next run.
This closes#60.
All the backend part has been rewritten to handle multiple constraints
in the config (== multiple queries).
Also did some linting.
Still to be done: frontend part and doc.
* Init Webpack / Babel / etc setup.
* Build the app using Vue, Vue-router, Vuex.
* i18n
Some backends changes were made to match the webapp development:
* Return the flat status as a single string ("new" rather than
"FlatStatus.new")
* Completely switch to calling Weboob API directly for fetching
* Use Canister for Bottle logging
* Handle merging of details dict better
* Add a WSGI script
* Keep track of duplicates
* Webserver had to be restarted to fetch external changes to the db
* Handle leboncoin module better
Also add contributions guidelines.
Closes issue #3
Closes issue #14.