New IBus helper functions

- text_from_string: Returns a new wkb_ibus_text from a string
- iter_append_text: Appends a wkb_ibus_text to a Eldbus_Message_Iter
- engine_desc_from_message_iter: Deserialize IbusEngineDesc type

Signed-off-by: Eduardo Lima (Etrunko) <eduardo.lima@intel.com>
Fix deserialize for all IBus types

This was wrong since the beginning, we needed another iterator to unpack
the struct before actually getting the values.

There was also need to add a specific function for deserializing IBusAttrList
to an Eina_Array of IBusAttr.

Change-Id: I2b01411a85c7d69a2d83d54917f87d93016bf75c
Signed-off-by: Eduardo Lima (Etrunko) <eduardo.lima@intel.com>
Finish implementation of IBusInputContext

Change-Id: I22495a9ff28dc3a4bc29156e66e588353fe83a3e
Signed-off-by: Eduardo Lima (Etrunko) <eduardo.lima@intel.com>
Check for IBus GlobalEngine property

If it is not set, use default US/English value (xkb:us::eng)

Change-Id: Iaf01b8ea683b241ebc61f2fa1e21ba3beec48c86
Signed-off-by: Eduardo Lima (Etrunko) <eduardo.lima@intel.com>
Enable IBus integration

Change-Id: I90231e22614ada60112aed923237f5f27bfe747c
Signed-off-by: Eduardo Lima (Etrunko) <eduardo.lima@intel.com>
Fix handling of special keys

Change-Id: If3e9e2c1b62f8b4f1e72a7473ac62b6e0b59f692
Signed-off-by: Eduardo Lima (Etrunko) <eduardo.lima@intel.com>