add layer test case

moved mkdir() method to IoUtils to ensure the directory hierarchy always
exists before writing cumulative and references files
fix class cast error
move each patch element contents in separate directories inside the
patch
fix rolling back a patched layer
fix layers misc files + add-ons
fix patch apply operation

* in LocalPatchOperationStepHandler, build a Patch Runner using the
installation manager service instead of patch info service.
* fix class cast exception in local patch operation handlers
added layer and add-on as child resources of patching
update metadata builders, extract layersConfig
patch generator wip
the root patch is actually the only owner for misc-files. It's up to the patch-gen tool to resolve eventual conflicts
fix patching tests
update rollback handling for modules
add basic patch info test case
store state in a single properties file
get rid of the patchInfoService
get rid of the legacy patch runner(s)
update installation manager to reflect a mutable state
rename cumulative to release-patch
add installed image to the identity
add restartRequired flag to InstallationManager

this flag prevents to apply consecutive patches (or rollbacks or any
combination of them) without restarting first the server to ensure its
installed identity is properly loaded and correct.
create installation directory by default
[AS7-462] add cumulative type
[AS7-462] properly track installation state as part of the history