We should be throwing a TypeError on values outside of the range for an unsigned long instead of the default modulo behaviour.
This implements the basic interface, classes and functions for OffscreenCanvas. Many are still stubbed out and have many FIXMEs in them, but it is a basic skeleton.