API: reconsider or warn on the non-sorting of DataFrame(dict) on Python >= 3.6 ?
I recently had a colleague that ran into a nasty bug, due to the fact that on Python >= 3.6 we no longer sort the columns when creating a DataFrame from a dict.

Eg on Python 3.5:

```
In [1]: df = pd.DataFrame({'B': [1, 2], 'A': [3, 4]})

In [2]: df
Out[2]: 
   A  B
0  3  1
1  4  2
```

On Python 3.6/3.7 this would keep the column order as `['B', 'A']`. 

If you write code that depends on the ordering of columns, like `df.columns = ['other', 'name']` (not the most robust way, but people do that), or like `df.iloc[..]`, you will silently get different results, leading to bugs.

---

Opening the issue mainly to discuss to see if we can somewhat alleviate such problem and what other people think (did other people similar problems), not necessarily to propose to completely revert the change (that would also be annoying given that is already out for some time).

But we could think about raising a warning in the specific case of using dict on Python >= 3.6 where the sorted column order and dict keys order does not match. 
But the annoying thing is that there is no easy way then for people to silence the warning, apart from adding a new keyword we then later would deprecate itself.

cc @topper-123 @TomAugspurger 

