fix(webapp/core): Javadoc completed

What to use instead of deprecated PluginRegistry
Merge pull request #81 from ingorichtsmeier/patch-1

fix(webapp/core): Javadoc completed
feat(engine): async continuation AFTER activity

Introduces Asynchronous continuations after activities.

Both activities with outgoing sequence flows and without outgoing
sequence flows are supported.

Configured through camunda:asyncAfter="true".

Deprecation:
camunda:async="true" is deprecated and should be replaced with camunda:asyncBefore="true".

related to #CAM-721
fix(engine): use list for multiple job definitions for async tasks

- it is possible that an async continuation exists before
  and after the task so a list required as property

related to #CAM-721
fix(REST/query/date): query with a date variable

If a variable query paremeter contains a String value which has the format
"yyyy-MM-dd'T'HH:mm:ss" then the value will be parsed to a date. The
parsed date will be used for the query.

related to CAM-2123
fix(signavio-it): adjust ITs to new label behaviour
fix(webapp/admin): support '/' in user and group Ids

related to #CAM-2299
fix(webapp/admin): fix url escaping

related to #CAM-2299
fix(webapp/admin): support '/' in user and group Ids

support e2e double encoding for '/'

related to #CAM-2299
fix(ldap): escape userDn when querying for group membership

Added escaping of group filter for when querying for group membership by
user id.  This fixes the problem of the group membership query not
returning any results if the user DN contains any LDAP special
characters (refer
https://www.owasp.org/index.php/Preventing_LDAP_Injection_in_Java).

related to #CAM-2309
fix(webapp): redirect if no 'default' engine exists

make sure cockpit handles configuration with no 'default' engine
gracefully

related to #CAM-2126
fix(webapp/admin): fix escaping issue on group remove from user

related to #CAM-2299
fix(typo): fix typo in exception message
fix(webapp/admin): fix group id escaping

related to #CAM-2299
test(revision/test): increment revision of historic variables

related to CAM-2366
fix(typo): fix typo in test case
fix(IoUtil): use utf-8 to read file content

related to #CAM-2379
feat(sql/task): extend db table "ACT_RU_TASK" with new columns

This commit adds new columns to the db table "ACT_RU_TASK":

- CASE_INSTANCE_ID_
- CASE_EXECUTION_ID_
- CASE_DEFINITION_ID_

related to CAM-2189
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