Some initial, very thin starts to these classes to get us talking.
The KEngine implementation

* KEngine is responsible for initialising the repository which is loosely
  coupled using the service API

* The repository plugin takes care of the implementation of the repository
Merge remote-tracking branch 'dan/engine' into engine

Conflicts:
	plugins/org.komodo.core/src/org/komodo/core/KEngine.java
Further implements notifications between KEngine and Repositories

* Provides framework for repositories to receive notifications from
  KEngine using generic IReposioryClient interface and accompanying events
Merge branch 'master' into HEAD
Implements local repository with internal modeshape engine

* Implements LocalRepository class and provides rudimentary unit tests
Converts the local repository to run on its own thread

* Moves the local repository plugin into core as no point in them being
  separate

* Moves the modeshape engine to its own thread
 * Stops UI freezing when the engine is started and when queries are
   undertaken. This may not be an issue now but will certinally be in the
   future and important to do it now before we run into such issues.

* LocalRepository interacts with modeshape thread through notifications and
  callbacks.

* Clients interact with the local repository by adding themselves as
  observers to the local repository. In time this will be extended to cover
  modeshape's internal observer listener events.

* Unit test modified to support waiting for the modeshape engine to start
  on its own thread prior to testing its state.
Merge branch 'engine'