Tokens: Revamped BuildControlTree logic

* Revamped BuildControlTree logic.
* Added complex counter test.
* Version number bumped 1.2.
* Copyright year set to 2014.

More fixes for #28.

The complex syntax such as:

```html
ul[data-bind="foreach:customers"]>li*3>span{Caption $$}*4+input[type=text data-bind="value:$$"]+ul[data-bind="foreach:customers"]>li*4>span{Caption $$}+input[type=text data-bind="value:$$"]
```

Should have a proper sub-counters:

```html
<ul data-bind="foreach:customers">
    <li>
        <span>Caption 01</span>
        <span>Caption 02</span>
        <span>Caption 03</span>
        <span>Caption 04</span>
        <input type="text" value="" data-bind="value:01" />
        <ul data-bind="foreach:customers">
            <li>
                <span>Caption 01</span>
                <input type="text" value="" data-bind="value:01" />
            </li>
            <li>
                <span>Caption 02</span>
                <input type="text" value="" data-bind="value:02" />
            </li>
            <li>
                <span>Caption 03</span>
                <input type="text" value="" data-bind="value:03" />
            </li>
            <li>
                <span>Caption 04</span>
                <input type="text" value="" data-bind="value:04" />
            </li>
        </ul>
    </li>
    <li>
        <span>Caption 01</span>
        <span>Caption 02</span>
        <span>Caption 03</span>
        <span>Caption 04</span>
        <input type="text" value="" data-bind="value:02" />
        <ul data-bind="foreach:customers">
            <li>
                <span>Caption 01</span>
                <input type="text" value="" data-bind="value:01" />
            </li>
            <li>
                <span>Caption 02</span>
                <input type="text" value="" data-bind="value:02" />
            </li>
            <li>
                <span>Caption 03</span>
                <input type="text" value="" data-bind="value:03" />
            </li>
            <li>
                <span>Caption 04</span>
                <input type="text" value="" data-bind="value:04" />
            </li>
        </ul>
    </li>
    <li>
        <span>Caption 01</span>
        <span>Caption 02</span>
        <span>Caption 03</span>
        <span>Caption 04</span>
        <input type="text" value="" data-bind="value:03" />
        <ul data-bind="foreach:customers">
            <li>
                <span>Caption 01</span>
                <input type="text" value="" data-bind="value:01" />
            </li>
            <li>
                <span>Caption 02</span>
                <input type="text" value="" data-bind="value:02" />
            </li>
            <li>
                <span>Caption 03</span>
                <input type="text" value="" data-bind="value:03" />
            </li>
            <li>
                <span>Caption 04</span>
                <input type="text" value="" data-bind="value:04" />
            </li>
        </ul>
    </li>
</ul>
```

For more tests, click <kbd>Try it yourself</kbd> at http://docs.emmet.io/ and compare the results with this implementation.