MNT: Fix python2-3 issue in read_binary

The issue is the `sorted`.  The keys are a mix of string and integers which are no longer comparable 

`sorted(np.typeDict, key=str)` works by converting all the keys to strings before sorting but using the original items in the returned list.  Sorted takes any iterable sorted so no need to listify first.  I wonder if it is clever enough to switch to an insertion sort when it gets an iterable...