Table sort fails for unicode fields in numpy 1.5

From #1864:

Fails for unicode columns (numpy 1.5, Python 2.7):
```
In [7]: t = Table([[u'Max', u'Jo', u'John'], [u'Miller', u'Miller', u'Jackson'],[12,15,18]], names=('firstname','name','tel'))

In [8]: t._data
Out[8]: 
array([(u'Max', u'Miller', 12), (u'Jo', u'Miller', 15),
       (u'John', u'Jackson', 18)], 
      dtype=[('firstname', '<U4'), ('name', '<U7'), ('tel', '<i8')])

In [9]: t.sort(['name', 'firstname'])

In [10]: print t
firstname   name  tel
--------- ------- ---
     John Jackson  18
      Max  Miller  12
       Jo  Miller  15
```

Works for string-type columns:
```
In [11]: t = Table([['Max', 'Jo', 'John'], ['Miller','Miller','Jackson'],[12,15,18]], names=('firstname','name','tel'))

In [12]: t.dtype
Out[12]: dtype([('firstname', '|S4'), ('name', '|S7'), ('tel', '<i8')])

In [13]: t.sort(['name', 'firstname'])

In [14]: print t
firstname   name  tel
--------- ------- ---
     John Jackson  18
       Jo  Miller  15
      Max  Miller  12
```

This is due to a numpy bug.  The only reasonable course of action here is to detect a situation where the user is going to hit the numpy bug (sorting on unicode column(s) in numpy 1.5) and then abort with an informative error message.

Unknown at this time if this affects any other versions, e.g. < numpy 1.6.2.