Add Observer to Visual::Base for resource ready
Add signal to Control (Base)
Implement Observer in Control::Impl when Visual is Registered

Call the Observer from Image/Svg/etc Visual when they add the Renderer to Actor (this is usually when the visual is placed or stage or when async load completes).

Currently the signal will only fire when the control is on stage and all resources are loaded (async and sync).

Public API change note: This patch changes the declaration of Control::Impl from private to public, however this does not effect any exported symbols, so should keep binary compatibility. Also the class is not accessible externally as it's definition is not exposed.

- On the TV emulator, when the users press the OK key
in DALi TextField application, the virtual keyboard(IME) disappeared.
- Recently, new Key mapping table in TV was created
: DALI_KEY_OK enum value == "Return"
- In TextField, if the keyPressedName is "Return" && KeyEvent::Up,
then called ClearKeyInputFocus().

Implemented a cut down version of TextureManager to handle Async loading for
local and remote images, without atlasing or handling for broken image.

Modified test harness to manage multiple event triggers using a round-robin
semaphore test. (Required, as we now have 2 AsyncImageLoader threads in
TextureManager, which each generate an EventThreadTrigger).

The up-call is required as per the control writing guidelines.
A relayout request is required so that the control's fonts and size can be recalculated.
A similar fix has already been pushed to the product branch.

* The text is scrolled to a wrong position after pasting
text on top of the selected one.
It happens if the pasted text has the same or more
number of characters than the selected one but the width
is shorter.