fix(engine): do not execute suspended job

- make sure we do not execute a suspended job if the job is created
while executing another job

related to #CAM-2009
fix(camunda-webapp): fix cockpit process instance ordering

related to #CAM-1718
chore(cockpit): adjust tooltip texts

related to CAM-1989
feat(engine/VarInstQuery): handling of binary & serializable types

Binary:
- enable query for binary variabes
- value will not be fetched by default
- value will be fetched if .fetchBinaryValues(); is called

Serializable
- Query will attempt to de-serialize values
- if de-serialization fails, the query will not throw an exception but
provide an error message on the failed variable instance.
feat(engine-rest): variable instance resource

Add new resource:

GET /variable-instance/{id}
	returns the default Json representation

GET /variable-instance/{id}/data
	returns the binary content of a binary variable

related to #CAM-2007
feat(rest): MessageBodyReader for MultipartForm Data

custom JAX-RS @Provider: MessageBodyReader for MultipartForm Data.

related to #CAM-2010
feat(Rest): POST for binary variables

POST the content of a binary variable:

	POST /execution/{id}/localVariables/{varId}/data
	POST /process-instance/{id}/variables/{varId}/data

Content type is multipart/form-data
Parts:
* data: the data. Content type is either
    * octet-stream => handling as byte array
    * application/json => handling as serializable, "type" is required
* type: only for type Serializable: the java type of the json serialized
data

related to #CAM-2011
feat(rest): type for serializable
feat(cockpit): support for binary variables

- Byte array variables can be downloaded and uploaded.
- Serializable variables can be edited as Json Object Representation.

related to #CAM-1419
fix(cockpit/breadcrumbs): retrieve the correct breadcrumbs information

related to CAM-1865
additionally look at CAM-2017
fix(rest): jackson compatibility

use deprecated api to maintain compatibility on IBM WAS 8.x
feat(engine/tests): Add testcases for signal event subprocess

- add testcase for signal event subprocess interrupting
_ add testcase for signal event subprocess non interrupting

related to #CAM-1993
Merge branch 'master' of github.com:camunda/camunda-bpm-platform
fix(engine/parser): use encoded url for parser url

- depending of the classloader the returned URL of
  ReflectUtil.getResource is encoded or not
- don't use ReflectUtil.getReource(...).toString, use
  ReflectUtil.getResourceUrlAsString() instead

related to #CAM-1639
improve(cockpit/filters): uncheck filters when they are all active

related to CAM-1980
chore(engine/test): add further test cases

related to CAM-836
fix(engine/application): fix duplicate execution listener invocation

- parseBoundaryErrorEventDefinition() added listener to wrong activity
  (added to task not to boundary event)
- execution listener are generally added to all boundary events in
  parseBoundaryEvent()
- so they should not be added again in:
  - parseBoundaryTimerEventDefinition()
  - parseBoundaryErrorEventDefinition()
  - parseBoundarySignalEventDefinition()

related to #CAM-1979
feat(cockpit/searchParams): keep search parameters on view change

This commit adds the possibility to define which search parameters should
be kept if the user change view for example from "Runtime" to "History"
(and vice versa). Therefore it is possible to set the option
"keepSearchParams" to true or to assign an array of search parameters which
should be kept.

related to CAM-2003
fix(incident/state): set proper historic incident state

related to CAM-2025
test(rest): test for status code

related to #CAM-2011