Bug 5623 mixed formatting spellchecker

During our test and development of TinyMCE for integration to our application, we also met the issue described in Bug #5623 (http://www.tinymce.com/develop/bugtracker_view.php?id=5623). The solution done is to extend the spellchecker plugin to support mixed formatting and is based on the spellchecker plugin on TinyMCE 3.5.8. The solution is already working on IE 8, IE 9, and Chrome.

### What it does
Fixed bug #5623 where spellchecker cannot work on words with mixed formatting.
    
### Description of problem:
    I have tinymce set up with a spellchecker and if I
    format part of a word, the spellchecker is given multiple
    words and does not spell check the entire word correctly,
    tinymce identifies this as 3 separate words (textnodes)
    
    Steps to reproduce:
    1. type tesstingg into tinymce
    2. highlight sst and make it bold
    3. click spellcheck
    
    Expected result:tesstingg is recognized as incorrect
    spelling and alternatives are offered
    
    Actual result:spellchecker is given 3 text nodes and
    thinks te is misspelled and sst is misspelled and ingg
    is misspelled and treats them as 3 separate
    words/textnodes even though it is a single word with
    mixed formatting
    
### Solution to the problem:
    the spellchecking plugin is heavily
    modified to support words which are split into multiple text
    nodes even when split inside multiple elements.

### Another test case
![tinymce-spellchecker-testcase](https://f.cloud.github.com/assets/3970372/332362/9f174f64-9c24-11e2-9a2a-bb14b55751b2.png)

### Result
(note, word suggestions may differ depending on the dictionary version and configuration)
![tinymce-spellchecker-testcase-expected-result](https://f.cloud.github.com/assets/3970372/332374/e8e0a14a-9c24-11e2-9a58-1f78862ee959.png)