#3233 create core config object
#3233 add config spec
#3233 Implementing config system in core and component files
Merge issue #3233