Only sort dict columns in from_records for py < 3.6
- [ ] closes #xxxx (no existing issue)
- [x] tests passed (no new test added - can add one if necessary)
- [x] passes `git diff upstream/master -u -- "*.py" | flake8 --diff`
- [ ] whatsnew entry

DataFrame.from_records does not respect dictionary order on Python 3.6+. For example:

```
>>> df = pd.DataFrame.from_records({'C':[1], 'A':[2]})
>>> df
   A  C
0  2  1
```

This change respects dict ordering on Python 3.6+ in line with 0.23 pandas behaviour of constructor and from_dict:

```
>>> df = pd.DataFrame.from_records({'C':[1], 'A':[2]})
>>> df
   C  A
0  1  2
```

There appears to be further potential to reduce duplication if from_records called from_dict?
