Stacktraces in StateError point to user's code

If StateError happened when executing browser action asynchronously,
stack trace in it pointed to gemini's internals. This is not very useful
and does not allow to associate error message with test's source file.
This patch captures stack trace before each browser action call and
replaces StateError's one in case of an error.

No performance overhead and very little memory overhead
(~1 MB for pretty large suite) was detected.