Squashed commit of the following:

+ Fix for #5424. duplicated.data.table errors now for both by=TRUE/FALSE. The help page is updated accordingly.

+ Fixed an issue with DT[order(…)] optimisation where it's already sorted. 'forder' returns integer(0) for that case. All good now. Thanks Matt.

+ Fix for #5423 - DT[, y := y * eval(parse(text="1*2"))] works fine now without needing to wrap it as y * (eval(…))

+ Implemented FR #5172 - anyDuplicated.data.table method. Test added, NEWS and ?duplicated updated.

+ FR #5205 done - 'duplicated' and 'unique' gain 'fromLast' argument. Added extensive tests and updated NEWS and ?duplicated.

git-svn-id: svn://svn.r-forge.r-project.org/svnroot/datatable@1234 edb9625f-4e0d-4859-8d74-9fd3b1da38cb
Minor: Added `anyDuplicated` to 'Value' section in ?duplicated. No changes to code.

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