Rework decorate_preedit()

Rework decorate_preedit(), including one bugfix and one improvement.
bugfix: properly offset intervals after written zhuyin, intervals are calculated regardless of it.

improvement: refine underline style, use single/low underline for phrase marking, double underline for phrase which is selecting target.

there is another unsolved bug may affect the visual result, you may want to apply a workaround before test this patch:
in update_preedit(), add
ibus_engine_update_preedit_text (IBUS_ENGINE(self),SELF_GET_CLASS(self)->emptyText, 0, TRUE);
before
switch (self->_priv->inputStyle){
Merge pull request #30 from buganini/patch-1

Rework decorate_preedit()
Apply the workaround suggest by GitHub issue #30
SPEC: Update according to Fedora Packaging Guildline
Versions of IBus and libchewing are now defined as variables
Fixed Gob2 build command
Merge branch 'master' of github.com:definite/ibus-chewing
Update cmake-fedora
Properly refresh property

Properly refresh property when switching ChiEngMode by pressing shift key.
Merge pull request #31 from buganini/patch-2

Properly refresh property
Fixed GitHub issue #31: Properly refresh property by merging pull request #31 from buganini
After released 1.4.3
Bug 842856 - ibus-chewing 1.4.3-1 not built with