Introducing gestures, starting with tap

This first commit is limited to tap but the approach and architecture need to be validated before going further.
It allows the following template:
```
# template test1(ctl)
    <div title="test1" ontap="{ctl.handleTap(event)}" ontapstart="{ctl.handleTap(event)}" ontapcancel="{ctl.handleTap(event)}">
        Hello!
    </div>
# /template
```

The idea here is to have a fully independent module that an event handler (i.e an object with a handleEvent method) can use to delegate the management of gestures. The module simply calls back handleEvent to fire gestures.

A few interesting points:
1) The gestures module is fully isolated and relies only on Noder. There is one dependence on Klass, but this could be removed. As a consequence, it can be used in any js code which follows commonJS syntax.
2) Most of the code added is actually a rewriting of some pieces of Aria Templates, including tests and sample. The changes were to remove AT specifics, and to convert every thing to Noder. This previews how AT should be split when Noder will be fully interated.