adding control directive

This directive is an attempt to decouple as much of the DOM as possible from our ViewModel. With this directive you can set a control for the ViewModel scope with a specified key. Therefore instead of doing (using jQuery for quick example):

``` html
<div id="demo" v-on="click:fadeIn">
    <div class="sub-control">{{ message }}</div>
</div>
```

``` js
var demo = new Vue({
    el: '#demo',
    data: {
        message: 'Hello Vue.js!'
    },
    method: {
        fadeIn: {
            var el = $(this.$el),
                // what if our class name changes??
                subControl = $('.sub-control', el);

            subControl.fadeIn();
        }
    }
})
```

You can do this instead:

``` html
<div id="demo" v-on="click:fadeIn">
    <div v-control="sub-control">{{ message }}</div>
</div>
```

``` javascript
var demo = new Vue({
    el: '#demo',
    data: {
        message: 'Hello Vue.js!'
    },
    method: {
        fadeIn: {
            // does not care what class is, references controls key instead
            $(this.$controls['sub-control']).fadeIn();
        }
    }
})
```

Currently the directive will accept all letters, numbers, and `-_` characters as key values for the $controls object.