private static boolean isOptionPresent(final CopyOption copyOption, CopyOption... copyOptions) {
        return Arrays.asList(copyOptions).contains(copyOption);
    }
Deep copy the field values of stroom POJO object trees from source into dest.
Relies on the public getters/setters so private fields won't be copied.
NOTE: Only deep copies objects in packages starting with 'stroom'
Only non default source values will be copied, ie. the value in source
is equal to the value in vanillaObject.
stroom-util/src/main/java/stroom/util/config/FieldMapper.java