Use of a control factory to instantiate controls

To allow users to create their own custom controls without having to edit the `Container::addControl` function, here is an implementation of a `ControlFactory` that allow users to register their own custom controls. 

cf. [Forum Post](http://www.gameplay3d.org/forums/viewtopic.php?f=4&t=859)