Add SortByKey to the DeviceAdapter set of calls.
Make the Superclass typedef for derived array handles public.

We need this public so we can slice these classes so they are usable
with device adapters.
ArrayPortalZip needs a copy constructor to support InPlace transfer.

The InPlace transfer requires the ability to set a ConstPortal with
the contents of a normal Portal, now this is possible.
correct the thrust implementation of sortbykeys.
Add a test for SortByKeys
Fixup for adding api for SortByKey