Adds a method `setStack` to analysis.Frame which allows setting the
dataflow value of a stack slot.
Could be used in nullness analysis. After, for example, an instance call,
aliases of the receiver can be set to NotNull, both in locals and on the
stack.

Fix the maxStack computation for methods with frames and dead code. In fact, for any method with valid stack map frames, maxStack can be computed with a more efficient algorithm than the default one, which also works for dead code because frames are required even for dead code.

Improve the fix for issue #317823, which was not using a strict equivalent of the Analyzer algorithm (the labeling of the subroutines was depending on their order of appearance in the bytecode sequence).

Add an experimental suffix to the new features (also mark them deprecated and show a big warning in the Javadoc). Revert to ASM6 for the default api of the visitors, and use ASM7_EXPERIMENTAL only in tests (only exception: Trace*Visitor classes, which are final). This pattern could allow us to develop any new feature directly in 'master'.