Added new function islandora_copy_object() can copy existing/new fedora objects.

It's a bit leaky in that it makes assumptions about the members that will
exist on AbstractObjects, but we can't make cloning work at the moment as
it doesn't really work well with inheritance, every decendent would have to
define __clone functions properly and I figured a wrapper function like
this would be easier to support in the long term, until we make the
movement to decorated objects.