Merge pull request #877 from mattyb149/dev

[CLEANUP] Remove import of Drools StringUtils from TextFileOutput
[PDI-13204] - Original ESR-4178 tested patch: RowMeta indexOfValue method works in O(n) time

applied original .patch from ESR-4178
[PDI-13204] - Junits for ESR-4178 tested patch: RowMeta indexOfValue method works in O(n) time

Creating additional junits for tested patch from ESR-4178
[PDI-13204] - Additional fixes for ESR-4178 tested patch. RowMeta indexOfValue method works in O(n) time

Fix original ESR-4178 issues.
NOTE. Still fail with ability to modify List externally. See junits
results.
[PDI-13204] - Fix Mapping Input ValueMetaInterfaces outer modifications

Since Mapping Input attempts to modify VMI names externally this creates
de-sync with internal index map. There is no way to prevent it not changin
VMI interface (modification-listener pattern) - so the only way not to
shoot in own leg in this particular place is to force additional
re-hashing.
[PDI-13204] - Fix integration tests for new RowMeta behaviour

Avoid to create ValueMetaInterface with null name - this will cause NPE
when attempts to create hash-map of array entries.
[PDI-13204] - Additional (optional fix) to prevent index desycn.

We may consider to gave-out unmodifiable list,
In this case UnsupportedOperationException is predictable fail-behaviourinstead of getting out
of sync with Hash index.