Don't keep total momentum of protein equal to 0 during DNA translation

[#49656281]

Note that to do it "geneticEngineState" option had to be passed to
MD2D engine.

Probably it would be nice to move all functionality connected with
genetics and proteins to MD2D plugins.
Refactor genetic engine and renderer + improve DNA translation process

[#49656281] [#48721579]

This change includes quite significant recatoring of the genetic
engine. Now genetic engine manages its own queue of transitions. They
are not queued using D3. It has several advantages, e.g. MD2D engine
can track current state of the DNA-related processes. Previously only
the last state was visible as a model option, while now state is equal
to animation we actually see on the screen.

Other change is that transcription states are handled correctly, mRNA
variable doesn't define state anymore (so, instead of one state
"transcription", now we have "transcription:0", "transcription:1"
etc.)

Also, DNA translation process was improved, negative gravity is
applied during translation.

All these changes are in one commit as work on them was connected with
experiments and prototyping and after some time it didn't make sense
to try to revert and divide changes.
Update genetic engine tests

[#48721579]