Removed "final" declarations from class methods
Minor source formatting tweaks, PHPDoc blocks in inherited methods are replaced with @inheritdoc
Added some type hinting for methods declaration
Micro refactoring
 - Implemented caching of initialized configuration options for classes to avoid multiple configuration initialization for same classes
 - Fixed potential problem with setting invalid initial values for configuration options
Fixed problem with config modification in a case if non-existing keys are passed to modifyConfig()
Few micro optimizations
[BC Break] Signature of onConfigChange() method is changed, $merge argument is removed
[BC Break] Signature of modifyConfig() method is changed, $config argument is forced to be array
Minor optimization of getConfig() for retrieving single configuration option value
Added support for exporting configuration values without CLASS_ID_KEY marker entry