[IMP] config: allow defining addon_path in multiline

With a config like
[options]
addons_path: ~/foo,
	     ~/bar

'~/bar' was interprated as '\n    ~/bar' and is considered as a local directory
by os.path.abspath

Fixes #4403
[IMP] website_event_sale: validation of seats availability in cart.
Attendees are created and deleted on changing the quantity from the cart.

Added sale_order_id and sale_order_line_id fields on registrations, allowing
to find the order and the order line that created the registration without
to rely on origin and ticket.

Also fixed check_auto_confirmation, now in multi mode to avoid issues due to
the specific behavior of api.one.
[FIX] mass_mailing: updated link conversion.

Previously to this fix, url matching the same base url were linked to
the same shortened url: foo.be -> /aaa, foo.be/bar -> /aaa/bar instead of
a new shortened url.
[REM] hr_holidays: dead file
[FIX] mail : fix style (css, js and xml) of topbar button of mail.compose.message
[IMP] im_chat, im_livechat : usability improvements like, adding smiley, replace uuid by session name in reporting, modify messages order for the session form view and disabled beep when you receveive your messages.
[FIX] hr: fixed issue in employee image display in the kanban view
especially when using the group-by. Added a missing 'row', used an img-responsible
class instead of a fixed width.
[IMP] stream code from stdin through Odoo's shell

Now I have a machine gun. Ho-ho-ho.
[FIX] website_forum: tags were not displayed when editing a post.
[IMP] mass_mailing: campaign form view: add a stat
button to go to the campaign mailings + its function field to have the
counter.
[IMP] hr_holidays: when searching on holidays.status with an employee_id in
context and no specific order, order on limited leaves then on remaining leaves.
This is usefull for users having their normal leaves being displayed in top of
the list (legal leaves, compensatory leaves, then sick and unpaid for example).

Also updated the name_get of holidays status, displaying (remaining leaves /
max leaves) instead of (taken leaves / max leaves). What is important for
users is the number of remaining leaves, not the number of leaves already
taken in that type.

Also updated and reindented demo data (compensatory is now limited + order
of declaration due to this change).
[FIX] website_forum: post: if no create_date, relevancy is 0.
Fix a crash when creating a post in backend without create_date being set.
[FIX] web_tip: avoid tip on invsible element, causing some
display issues.
[IMP] website_blog : allow multi tags and date filter, clean all the routes, remove group_comment from website_mail (only user and portal can post comment on blog.post, but the form is visible for all), modify the redirect controller to the login form when posting comment, and remove the description field of blog.blog
[FIX] web: fixed display of datepicker in editable list view.
The icon was quite board, leading to ugly and sometimes too short display
of the date itself.
[IMP] fleet: usability improvements :
- simplifed name of vehicle model; the name is now the model name; the old function
is used to compute the name_get.
- added Suzuki data
- parent of a cost is now hidden except for technical group, because it is the
same as the vehicle
- fixed some vehicule -> vehicle typos
[IMP] odoo shell agnostic execution mode

Streamed file or interactive console are both available whether or not a
database is specified.
[FIX] hr_recruitment: use utm_mixin to allow to track the job applicant.
            Remove old source_id
            Use hr.recruitment.source to generate link with utm and create
            alias with default value for utm
[FIX] crm/utm: Fix bug with utm (ddac26cdbb3535239f5dbb41f5b464366065f3ba)
            Move demo into data
            Move ir_http to save the utm in the dispatch
[FIX] web: notebook: remove fade effect on tab switch

Also, fixed two global variables introduced by rev b2e32a8f7e7d0b
[FIX] website_blog : identation problem, and unused variable