Squashed commit of the following:

'setkey' on already sorted DTs are almost instantaneous now.

  ::  Matthew's `isSortedList` (in C) makes this possible. Repeated 'setkey' or 'setkey' on data.tables that are already sorted are almost instantaneous now (Comparison on 1e8*2 DT, 55 sec vs 1.2 secs)

Internal tweaks

    Added:
      setreordervec' in C and wrapper in R for fast reordering of vectors
      argument 'o' to iradixorder, dradixorder, radixorder1 (all internal fns)
      tweaks to 'fastorder' - small performance improvement (using setreordervec)
      'chorder2' to be used internally for new tweaks to 'fastorder'
      tests for 'setreordervec'

    Removed (minor):
      word 'inline' from Matthew's experimental forward-fastorder implementation

    All internal changes - No NEWS updates.

git-svn-id: svn://svn.r-forge.r-project.org/svnroot/datatable@1077 edb9625f-4e0d-4859-8d74-9fd3b1da38cb
Implemented FR #5152

last(x) where length(x)=0 returns 'x' instead of error. Test added + News updated.

git-svn-id: svn://svn.r-forge.r-project.org/svnroot/datatable@1078 edb9625f-4e0d-4859-8d74-9fd3b1da38cb