Implement Below mode for Canvas.

Ignore-this: 93fc00131bd8d8d06d8ff2dc1b1d482a

darcs-hash:20141109123415-4d2ae-1ceec3a67995f2db15d7348f586b843e39b1152a
Add support for weak references, finalisers, and factory pools.

Ignore-this: 6ba3f5184c1126efe31be56a2db6176e

darcs-hash:20141110000058-4d2ae-2ce396c874530c0ea11bea2e4f693032630b9e3c