Complete shuffling functionality

The functionality works now and creates a second object that is a
shuffled copy of the original object.