hooked up DisplayObject::blendMode
throws proper(ish) ArgumentError for invalid blendMode values
createError helper
move createError helper to flash/util.js
add global hint
use object map for faster lookup
implements blend modes multiply, screen, lighten, darken, difference, overlay and hard-light

via ctx.globalCompositeOperation, thus FF/Canary/WebkitNightly only for now (pending Kanvas shim maybe? @tobeytailor). Not implemented yet: layer, add, subtract, invert, alpha, erase, shader.
fixes lint errors
use AS3 flash.display.BlendMode consts
use throwErrorFromVM to throw exceptions
tests for DisplayObject.blendMode
use isString helper to check for string type
rename throwErrorHelper to throwError
fix comment
use slice helper
move UI8->BlendMode const mapping to DisplayObject, move BlendMode->canvas composite op to renderer
remove ADD, ALPHA, ERASE. it's not that easy.
better explanation of TODOs
Merge remote-tracking branch 'origin/feature_blendmode' into mozmaster

Conflicts:
	src/flash/util.js
	src/swf/renderer.js
Merge pull request #517 from mbebenita/runtime

Cleanup + Small Optimizations