Resolve violation of SoC in DataValueFactory class

Code coverage: 100%
CRAP: 20

SoC (separation of concerns) violation

DataType registration and DataValue factoring are two distinct tasks
and should not be mixed.

Change-Id: I370262323c203cf480ac174acab6a1ebc366ac9e