[DIC]: Support SCOPE_SINGLETON

Most DI frameworks allow to specify if an object is to be instantiated
as prototype or singleton.

* Prototypical scope (default) where each new injection returns a
new instance
* Singleton scope (well symfony calls it container scope) will return
the same instance for lifetime of a request

## Example
$this->registerObject( 'Foo', function ( return new Foo() ) { ... } )
If not declared otherwise, all objects are create with SCOPE_PROTOTYPE.

$this->registerObject( 'Foo', function ( return new Foo() ) { ... },
  DependencyObject::SCOPE_SINGLETON
)

$this->registerObject( 'Foo', new Foo(),
  DependencyObject::SCOPE_SINGLETON
)

Change-Id: I918b93511f2956aad918924932a185cdf95e2834