Fix marking of prototype objects in internal class pool

As per reported bug, we have to protect ourselves against potential loops
and can mark the internal classes much simpler by just walking through
the memory pool they were allocated in.

Task-number: QTBUG-38299
Change-Id: I3ae96e8082e76d06f4321c5aa6d2e9645d2830a0
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
Fix packaging builds

In order to access the js parser in release builds, we need to export
these symbols (althoug they remain private API).

Change-Id: Id534bfc8027f9a6feab53b09e7397d920e59e3f8
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
Fix translations in states causing failing assertions

This is a smaller fix suitable for the release branch, merely adding support
for translations to the bytearray compilation step for states and ensuring a
consistent error message when qsTr is used in list models.

The proper fix will be done in dev that eliminates the entire intermediate
QByteArray storage for custom compilers.

Task-number: QTBUG-38492
Change-Id: If5171f16eb742c718e48b8bbcb265b0c241cd5e7
Reviewed-by: Lars Knoll <lars.knoll@digia.com>