Core/Spells: fix cast time talent bonus of channeled spells

This fixes the cast time talent bonus of channeled spells, including Improved Succubus (https://github.com/TrinityCore/TrinityCore/issues/1543)
@joschiwald that would be the cleanest solution but... As the currently status of sources, it will probabily cause a messy. As said, the problem is that in our spell sources the concept of "duration" of a spell currently refers both to:
- "cast time" for non-challened spells
- "channeled time" for challened spells

For example in Spell.cpp we have:

```
if (m_spellInfo->IsChanneled())
    m_originalCaster->ModSpellCastTime(aurSpellInfo, duration, this);
```

I think your solution would be good, but it can be applied only once we have cleaned spell sources by totally separing the concepts of "duration" and "cast time" of spells (which caused the bug for channeled spells having a cast time). Imho we can use ModChanneledSpellCastTime for now to get these spells working and start to clean meanwhile, until we will be able to apply your solution and won't need that function anymore.

I have no idea about the amount of work needed, I started to get my hands on core only recently.