Cohesion behavior and class Pig added to PigAndSheep
EventDispatcher class commented
future plurals
Changes to improve the use of gates and devices by adding dynamic method
Merge branch 'develop' of https://github.com/txemagon/lluvia-Project into develop
Refactoring brain
Hash#each
Array#delete removes position 0
Array#collects now takes a given attr of an object
Hash#size Number of self keys
Brain interface change

All behaviors are from now own targeted:

    me.brain.activate('seek', other)
    me.brain.is_in$U('seel', other)
    // => true

    me.brain.is_in$U('seek', mom)
    // => false
Brain interface changed

All behaviors are now targeted.

    me.brain.activate('seek', other)
    me.brain.is_in$U('seek', other)
    // => true

    me.brain.is_in$U('seek', mom)
    // => false
Merge branch 'feature/brain' into develop
Gate singleton responders.

Imagine that you want a very particular behaviour
for every object of a type. Imagine, for example,
that you have Button:Gate and every button is
supposed to perform a particular action.

Then you can now type:

```javascript
var b = new Button("erase_id", null,
   {
      do_onmouseover: function (event, element){
         alert("I'm erasing your database! :p")
      }
   }
)
```
Merge branch 'feature/brain' into develop
Merge with develop
Default states thru Device.STATE
Default states thru Device.STATE
World showing background