use prototype to implement Desc

There are two tests failing now, but I'm not sure, if that because of the tests themself (as well)

The memory footprint is slightly smaller. With a simple test of bus chained with 50 `filter` on it, the retained size of single EventStream droppped from ~2k to ~1.6k.

Doesn't seem to affect performance at all:
```
desc-prototype % coffee performance/PerformanceTest.coffee
diamond x 21.99 ops/sec ±7.54% (41 runs sampled)
combo x 40.96 ops/sec ±6.72% (45 runs sampled)
zip x 1,611 ops/sec ±5.07% (80 runs sampled)
Bacon.combineTemplate.sample x 333 ops/sec ±4.58% (80 runs sampled)
Bacon.combineTemplate (deep) x 18.60 ops/sec ±4.34% (36 runs sampled)
Bacon.combineTemplate x 219 ops/sec ±3.53% (83 runs sampled)
EventStream.map x 3,263 ops/sec ±5.31% (80 runs sampled)
EventStream.scan x 2,951 ops/sec ±4.35% (77 runs sampled)
EventStream.toProperty x 3,087 ops/sec ±4.46% (81 runs sampled)

master % coffee performance/PerformanceTest.coffee
diamond x 21.84 ops/sec ±9.18% (40 runs sampled)
combo x 37.54 ops/sec ±12.23% (36 runs sampled)
zip x 1,487 ops/sec ±5.02% (77 runs sampled)
Bacon.combineTemplate.sample x 325 ops/sec ±4.75% (82 runs sampled)
Bacon.combineTemplate (deep) x 18.64 ops/sec ±4.01% (36 runs sampled)
Bacon.combineTemplate x 217 ops/sec ±5.20% (76 runs sampled)
EventStream.map x 3,013 ops/sec ±5.33% (80 runs sampled)
EventStream.scan x 3,038 ops/sec ±4.07% (80 runs sampled)
EventStream.toProperty x 2,832 ops/sec ±4.45% (80 runs sampled)
```