Add management of head in copy ctor and =operator.

Fixes issue #50.

I've added proper management of InternalNode *head to the Cue
C++ node binding's copy constructor and assignment operator. It just
uses the default copy constructor for InternalNode as we really only
need shallow copies of the objects.

@caitp can you comment?