Staging/release 4.0.0 m1

Changes for 4.0.0-M1
It is based on pr #44 (2 first commits), so it might need rebasing before merging.
It has to be combined with @dragos release notes. Make sure to update the 'announcement' link if needed.