improve(engine): OptimisticLockingListener type awareness

Allow OptimisticLockingListener to select Entity types it wants to
handle.

related to #CAM-2805
delete deployment via REST
feat(engine): add subProcessInstance to HistoricProcessInstanceQuery
related to CAM-2795
chore(engine): extend multi-instance IO mappings tests

- test that the input mapping variable does not exists outside of the
  scope

related to #CAM-2338
fix(rest): initialize variables map of task query dto

related to #CAM-2632
chore(rest): remove reflection from filter execution

related to #CAM-2798
feat(engine): add ability to query for variable instance by scope id

related to #CAM-2798
feat(engine): add ability to query for variable instance by names

related to #CAM-2798
feat(rest): fetch variables specified in the filter properties

- if a task filter has a property variables, which should be a
  list of variable names, the REST API will query for additionally
  for this variables and embedded them into the HAL response
- note: only HAL requests supported and every task has its own
  variables embedded, which contain a self link on the correlating
  REST resource

related to #CAM-2798
chore(rest): use constants for accept header
test(engine): add failing tests for incorrectly executed output mapping

- if a task is interrupted by a boundary event the output mapping
  still executed which is not expected to happen

related to #CAM-2817
chore(nonInterrupting): provide a failing test case

related to CAM-2821