Add ConcurrencyBalancer to handle redis semaphores

This is needed for OntologyParsing where multiple
ontologies import another one. This should
help to avoid race conditions.
add funcation array monkey patches.
let the parser take responsibility for iris

Now the parser claims the iris connected to
specific ontologies while parsing, so no
other parser-instance can parse the same ontology
at the same moment in time.
adjust the batch worker for concurrent parsing.
fix method call for redis locking.
replace redis variable jumping with a wrapper.
update worker for concurrency balancing support

Also includes description why the RepositoryUpdateWorker
is not affected.
Merge branch 'staging' into 685-solving_multiple_ontology_concurrency
improve concurreny balancers error messages.
use ontohub iris for concurrency balancing lock

Instead of using the specified XML DGNode name (iri)
we use the calculated ontohub iri.
fix dgnode_stack concurrency problem with lambdas

Instead of incrementing a counter we use two lambda-functions
to address the current and future stack-address.
add try-counter to concurrent workers.
add sequential locking mechanism.
add sequential queue support.
start sidekiq with additional sequential queue.
handle already locked concurrency error accordingly.
fix rescue syntax problems.
add spec for testing concurrency_balancer behavior.
add sequential lock specs.
preload all extensions/monkey patches at boot

For extensions (or monkey patches if you will) it is mandatory
to load them at boot time.
One could either do this by placing them in the initializers directory
or by loading them with a directive.