Below is my thoughts so far. It will be keep updated.
1. Microsoft Teams really should be part of "Skype for Business", instead of a separate product.
2. Documents should not be allowed to be copied from SharePoint Sites to "Teams Files".
It's much better to just create a file link in Microsoft Teams.
3. Outlook Group should be renamed as "Shared Inbox".
The details are described in this post
4. Yammer should be part of SharePoint site, instead of a separate product.
5. All documents should be forced to store in SharePoint Document Library.
In other tools (apps), the documents should be attached at a "file link".
6. Unified API
For example, developers should be able to connect to different APPS by one API command.
7. Add "Fast List" to SharePoint Online
"Fast List" needs to be as fast as SQL table, so all Office 365 items, including conversations, calendar events, etc. can all be stored in SharePoint Online.
8. SPFX solution need "site collection" level deployment scope
"For SharePoint Framework solutions, there is only one deployment scope: tenant wide. Once added, and enabled, in the App Catalog, the SharePoint Framework solution will be available to all Site Collections."