Replace binary Analysis format with a text-based one.
Reads/writes are a little faster with the text format,
and it's far more useful. E.g., it allows external manipulation
and inspection of the analysis.

We don't gzip the output. It does greatly shrink the files,
however it makes reads and writes 1.5x-2x slower, and we're
optimizing for speed over compactness.
Merge pull request #988 from benjyw/text_analysis_file2

Replace binary Analysis format with a text-based one.
Fixes #989, #990.  TrapExit jvm-independent and awt handling is only done when awt is used.

SecurityManager.checkAccess(ThreadGroup) is specified to be called for every Thread creation
and every ThreadGroup creation and is therefore jvm-independent.  This can be used to get all
Threads associated with an application with good enough accuracy.

An application will be marked as using AWT if it gets associated with the AWT event queue thread.
To avoid unwanted side effects of accidental AWT initialization, TrapExit only tries to dispose
frames when an application is so marked.  Only one AWT application is supported due to a lack of
a way to associate displayed windows with an application.
Resolved bugs reported in Issue 947. Also added SNAPSHOT suffix to the version by default.
Revised based on pull request feedback.
Merge commit 'e7d5cd1bd25aa24abb6a1ead3a2701bc451ff724' into 0.13