feat(cmmn/lifecycle): manualStart, disable, re-enable Tasks or Stages

This commit extends the "CaseService" to be able to start manually,
disable or re-enable a Task or Stage. This can be done by using the
"CaseService" as follows and behaves like it is described in the
specification of CMMN 1.0:

  - manualStart: performs a transition from state "ENABLED" to "ACTIVE".
    In case of a HumanTask there will be a new UserTask available, that
    can be  executed by a Case worker. And in case of a Stage the planned
    items which should be executed inside this stage will be instantiated.

    caseService
      .withCaseExecution("aCaseExecutionId")
      .manualStart();

  - disable: performs a transition from state "ENABLED" to "DISALBED"

    caseService
      .withCaseExecution("aCaseExecutionId")
      .disable();

  - re-enable: performs a transition form state "DISABLED" to "ENABLED"

    caseService
      .withCaseExecution("aCaseExecutionId")
      .reenable();

Note: the "caseExecutionId" that has to be passed to
"CaseService#withCaseExecution()" represents the case execution which is
associated with the Task or Stage to start manually, to disable or to
re-enable.

Furthermore it is possible to set and remove variables for a case
execution as follows:

  caseService
    .withCaseExecutionId("aCaseExecutionId")
    .setVariable("...", ...)
    .setVariablesLocal(...)
    .removeVariable(...)
    .execute();

This can be combined with one of the above described state transitions,
for example:

  caseService
    .withCaseExecutionId("aCaseExecutionId")
    .setVariable(...)
    .removeVariable(...)
    .manualStart();

This has the effect that the changes will be executed within a single
command and if something fail the command will be rolled back.

The TaskQuery is extended by further query criterias:
- TaskQuery#caseInstanceId() to query after tasks which are associated
  with a specific case instance
- TaskQuery#caseInstanceBusinessKey() to query after tasks which are
  associated with a specific case instance with the given business key
- TaskQuery#caseInstance... etc.

related to CAM-2189, CAM-2192, CAM-2194
feat(cmmn/REST): manualStart, disable, reenable via REST API

This commit adds the possibility to start manually, disable or re-enable a
Task or Stage using the REST API. And it is possible to set and/or delete
(local and not local) case execution variables.

Furthermore this commit extends the TaskQuery via REST API.

related to CAM-2189, CAM-2192, CAM-2194