Fix: In some cases, Play 2.2 didn't report transactions
When a chain of promises resolved, specifically using Future.flatMap(), lingering promises prevented the transaction from completing, in which case the transaction wouldn't be reported for the app. This is now tracked correctly.
Fix: Improved performance when instrumented code is not running in a transaction
Avoids unnecessary work when code instrumented by the Java agent is not running in the scope of a transaction.