Required software:
    Jakarta Commons CLI (1.0)
        (commons-cli.jar) [http://jakarta.apache.org/commons/cli/]
    Jakarta Commons Lang (2.2)
        (commons-lang.jar) [http://jakarta.apache.org/commons/lang/]
    Jakarta Commons Pool (1.2)
        (commons-pool.jar) [http://jakarta.apache.org/commons/pool/]
    JiBX: Binding XML to Java Code (1.1.3)
        (jibx-run.jar) [http://jibx.sourceforge.net/index.html]
	    - XML Pull Parser (1.1.2)
	      	(xpp3.jar) [http://www.extreme.indiana.edu/xgws/xsoap/xpp/mxp1/]
    Soot: a Java Optimization Framework (2.1.0)
        (sootclasses.jar) [http://www.sable.mcgill.ca/soot/]
		(jasminclasses.jar) [http://www.sable.mcgill.ca/soot/]
        - Polyglot 1.1.0
          	(polyglot.jar) [http://www.cs.cornell.edu/Projects/polyglot/]
    SWT (3.1)
        (swt.jar, swt-pi.jar) [http://www.eclipse.org]
    xmlenc (0.52)
        (xmlenc.jar) [http://xmlenc.sourceforge.net/]
    XMLUnit (1.0)
        (xmlunit.jar) [http://xmlunit.sourceforge.net/]
    JUnit (3.8.1)
    	(junit.jar) [http://junit.org]
    GNU Trove (1.1b4)
    	(trove.jar) [http://trove4j.sourceforge.net/]
    Simple Logging Facade For Java (1.0.1)
    	[http://http://www.slf4j.org/]
    	- As a substitute, you can use nlog4j [http://www.slf4j.org/nlog4j/] (v1.2.25)
	Bandera [OPTIONAL]
		(banderaCommons.jar, banderaToolFramework.jar) [http://bandera.projects.cis.ksu.edu]

Version 0.8.3.12
--------------------
	- Add a new root method trapper (AllNonPrivateMethodsInAppClassesTrapper) to trap all non-private methods as 
	root methods.

Version 0.8.3.11
---------------------
	- Environment.getClass() was not checking if the requested class was loaded.  Fixed.

Version 0.8.3.6
-------------------
	- changes in version of required libraries

Version 0.8.1
----------------
	- Based on JiBX version 1.0.2.

Version 0.8
--------------
	- Feature request:
		- 676 - Java 5 adoption
	- Bug report:
		- 768 - Context-sensitive slicing seems to be overly perssimistic
	- Removed dependence on commons-collections.
	- Removed types: FixedSizeSet.
	- Added/Refactored annotation types: Empty, Experimental, Functional, Immutable, InternalUse, Marker, NonNull, 
		NonNullContainer, NumericalConstraint, OCLInvariant, OCLPostCondition, OCLPreCondition.
	- Published example code base has been expanded.

Version 0.7.2
-----------------
	- bug fixes: 694, 675

Version 0.7.1
-----------------
	- Java 5 compatible class files.  JDK 1.5 and above is required.

Version 0.7
----------------
	- Renamed IAtomicityInfo to IConcurrentIndependenceInfo.
	- Extended IEscapeInfo to provide more precise escape info pertaining to static fields.
	- Extended fieldAccessShared in IEscapeInfo to specifically answer read-write and write-write based shared access.

Version 0.6.4
----------------
    - Renamed indus.tools.bandera package as indus.toolkits.bandera.

Version 0.6.3
-----------------
	- Renamed IObjectReadWriteInfo to IReadWriteInfo.
    - Added support for limited calling context retrieval.

Version 0.6
----------------
	- Interprocedural-exception-flow-sensitive control flow aware basic block graph.
	- New interface to capture exception raising info - IExceptionRaiseInfo.
	- Added support for sinks and sources (different from heads and tails) to graphs.
	- Feature request #612, #616, #617.
	- Added finite automaton implementation.
	- Added support to represent edge-labelled graphs.
	- Added support for fine grained control on execution of analyses and processors.
	- Added support to filter program points and visit locals via the ProcessingController.
	- Added support in the ProcessingController to control the order in which the statements of a method are
		visited. [API BREAKING CHANGE]
	- Added a Class Hierarchy implementation.
	- Added support to retrieve field reading/writing thread information from IEscapeInfo.

Version 0.5
----------------
	- Added support to specify scopes that can be used during program analysis and transformation.
	- Added support to collect simple size metrics.
	- Added support to create and provide calling contexts
	- Added support to manage infomation based on IDs of implementation.
	- Refactored the mechanism to configure property-based application-level constants.
	- Extended use-def info interface to handle static fields.
    - Addressed feature request #536.
	? Requires jars from Bandera to use Bandera related tools.

Version 0.4
------------
	- Feature requests 426, 435.
	- Added support in basic block graph manager to cache statement list of methods.
	- Class file and Sources are now v1.4 compatible.
	- Depends on GNU Trove library from here on.


Verion 0.3
-----------
	- Added a new interface and implementation in which graphs can be queried fro objects associated with nodes.
	- Added a few more methods to CollectionsUtilities.
	- Minor bug fixes to Tools api classes.


Version 0.2
------------
	- All xmlizers use classes from xmlenc library to generate xml documents.
	- Lots of refactoring.
	- Reachability optimization in graphs.
	- A slew of classes for filtered viewing of java collections framework class instances.


Version 0.1
-----------
This is (hopefully) a stable release of version 0.1a.  One notable change is that we have decided to use Soot 2.1.0 for
Indus.  This is because there were some changes in Soot pertaining to control flow graphs which were not decided at the time
of this release.  As we do not know when these changes in Soot will stabilize we advice the users to use Soot 2.1.0 only.

We have introduced a new module, tokens, to manage values/tokens in the flow analyses.


Version 0.1a
--------------
This is the first release of Indus subproject of Indus.  This modules captures the interfaces and implementation common to
other modules in Indus.  Please refer to the user guide and the javadocs for more information.  Users at this point should not
be deal with this module but rather should require it to use the slicer and the staticanalyses modules.
