Add an initial support for RTL text.
This change adds a 'CharacterIterator' class to change the character order from the logical order to the visual order. This change also replaces Arabic characters to their contextual forms.