Fixed Require-Bundle and Import-Package in all bundles before creating
new bundles so we can now continue doing things right. Importing
packages was preferred, except in cases where there was a direct
dependency to Equinox, namely the AspectJ weaving and the console.

Moreover, created the Controller bundle to start implementing a
controller which will communicate with external applications.
Fixed a small comment ("start" -> "sim").
First steps in allowing Zanshin to work with an external system. Plus,
major refactoring in the bundles. Read below.

1. Project zanshin-remote was created to implement the API that the
target system will use to communicate with Zanshin.

2. Project zanshin-simulations was created to implement the simulations
that were originally in the it.unitn.disi.zanshin.simulation bundle. The
idea is to have the simulations as external systems too, to serve as an
example to anyone who wants to apply Zanshin to a real system.

3. Project it.unitn.disi.zanshin.controller was created to implement the
communication to external systems on Zanshin's side. It registers an RMI
server that is contacted by the zanshin-remote API.

4. Dependencies among bundles were changed in all projects. Before, the
dependency was to the precise bundle. Now the dependencies are to the
packages, which means that other bundles offering the same packages can
be used instead.

Zanshin's controller already implements part of the system registration
feature, which is the first thing an external system does when talking
to Zanshin. Zanshin receives the system's  requirements as an EMF file
and should generate Java sources based on it, compile them and load the
classes in its own classpath, so that the monitoring component will be
notified when life-cycle methods of these requirements are called. 

Java source generation is done. To compile the classes, the classes from
the base packages (eca, gore, LTL) should be added to the project that
is created to hold the generated classes and then the batch compiler
should be called. These should be done next.
Continued the development of the communication between Zanshin and
external apps. Implemented the compilation of classes and began working
on a session manager for user sessions. Realized that the .ecore file is
not enough and the target system should also send a model based on this
.ecore file (i.e., we need both the meta-model and the model) so we can
load a GoalModel instance and register it within the Repository Service.
Will do that next...
Continued the development of Zanshin Remote API.

Fixed the management of models to use the correct packages instead of
generic EPackage instances. Included the submission of the requirements
model as well as the meta-model and the instantiation of goal models in
memory, registering them within the Repository Service. The
zanshin-simulations project now tests the execution of a life-cycle
method in a requirement instance and Zanshin properly captures that in
the monitoring service.

Next, I should port the rest of the Acad simulations from the
simulations bundle to the zanshin-simulations external project, but
still using a mock monitoring service. If the simulations can be
properly run like this, then the mock monitoring services should be
replaced by proper rules monitoring, which means the Zanshin RMI Server
should also receive AwReqs definitions in OCLtm and compile them to a
rules file...
Continued the development of Zanshin's Remote API.

The controller bundle of Zanshin now provides an implementation for the
target system controller service which works together with the Zanshin
RMI Server to send adaptation instructions via RMI to the external
application. The basis of this has been committed here, but simulation 1
is still not complete: the RMI client at the target system's (i.e., the
simulation's) end should "wake the simulation up" after receiving all
the adaptation instructions. Will do that next, and then implement the
other simulations.

Note that the simulations bundle has been removed from the project. Most
of its classes will come back, though, as part of the
zanshin-simulations project.
Forgot an acknowledgment... :)
Continued the development of Zanshin's Remote API.

* Implemented the A-CAD simulation of AR11 failure (using Qualia);
* Fixed an issue with the lock in which the simulation thread was
waiting;
* Implemented the `list` command of the simulation console;
* Fixed the problem where situations could not be ran twice;
* Implemented parameter changes (instance and class level) in Zanshin;
* Other fixes in Zanshin in order to make it all work.

Later, should implement the scalability simulations as well, but it
seems that the Remote API of Zanshin is at a usable state. Will merge
into master and tag it v0.91.
Commented classes, attributes and methods.

Wrote comments in the classes that were created or changed during the
implementation of Zanshin's Remote API.