Debug-Output only

No changes on the inner workings, only provided better Debug-Messages.
Add misc helper functions

Added small helper functions that may provide handy
On progress monitoring

Small changes on progrss monitoring that enable having an actual
progress-meter instead of just having heart-beat information.
Add GoTo-instruction for Synt. Methods (limited)

Implemented the GoTo istruction reachable through the
JavaInstructionFactory.

Caution:
- It has to be asshured manually that a basic block starts at the target
- One may not jump to a Phi-Instruction
Fixes on AndroidAnalysisScope

Depending on the method used generating an AnalysisScope failed for
Android-Apps. Especially depending on wheater data was used from a
jar-resource or depending on exclusions.txt
Tools to facilitate buildin Synth. Methods

Have a toolkit that aids in building WALA-synthetic methods by helping
to avoid common mistakes and managing SSA-Variables.

See bundled package-info.java for more detail
Enable variable-names in Synth. Methods

Using a SummarizedMethodWithNames instead of a normal one enables human
readable variable names in WALA-Synthetic methods. This should help
when debugging.
Constants for Android-Types

Added Android-Specific types as TypeName and TypeReference
Locate Androids EntryPoints

Locating them will be based on a set of hardcoded specifications (next
commit) or by using heuristics.
Add hardcoded Android EntryPoints

Added a good bunch of specifications which functions to considder as
EntryPoints for Android Apps. These will be evaluated by
AndroidEntryPointLocator
AndroidModel: Add central config class

The class AndroidEntryPointManager will contain all configuration data
for building the Android Livecycle Model
Add structures for parameters to Androids entrypoints

Parameters to Androids EntryPoint-Functions may be either marked CREATE
or REUSE. Added these markers and made them availabel through
AndroidEntryPointManager.
Build basic Android-Livecycle (sequential)

Generate a synthetic AndroidModel in AndroidModelClass.
The model will contain Android EntryPoints in a sorted manner. However
no special handling (loops) are inserted yet.

Intents are not processed at all - thus have to be marked insecure.
BUG: empty BB in InducedCFG.addExceptionalEdges

Current workaround is to ignore it
Implement CB_HEURISTIC for locating EntryPoints

CB_HEURISTIC searches for all methods overwriting or implementing
methods of android that have not been covered by EP_HEURISTIC
Add structure to Android Livecycle

The added structure is governed by an AbstractAndroidModel. When
"labels" are stepped over it may insert special handling code.
Android-Intents: context-free overrides

Whenever the start of an intent is encountered the start-function is
replaced by a call to UnknownTargetModel.

UnknownTargetModel will call a restricted android-model (i.e. one that calls only all
Activities). This restricted model is known as MiniModel.
It will also call ExternalModel which does nothing special.
Android Intents: add special context

Whenever an Intent is encountered while building the CallGraph a
WALA-Context is generated for it. If a new Android-Component is started
and the Context is sufficient the start-function will call a new type of
model, the MicroModel.

The MicroModel resemples the livecycle of a single Android-Component.
Read AndroidManifest.xml

Reading in this file is needed for determining targets of Intents.
Build coarse Android Environment

Governed by AndroidEntryPointManager.setDoBootSequence generate some
coarse Android-environment before starting the LiveCycle-Model.

Some action is taken to attach the Android-Context to Components - much
is still missing there though.
Thin context is mainly useful when starting Intents of an external App.