Unsigned 32 bit integers in Javascript
===

How can I emulate 32 unsiged integers without any external dependencies in Javascript? Tricks with `x >>> 0` or `x | 0` don't work, and doubles lose precision during multiplication. 

For example, try to multiply 2654435769 * 340573321 (mod 2^32). The result should be 1.

[This answer](http://stackoverflow.com/questions/6232939/is-there-a-way-to-correctly-multiply-two-32-bit-integers-in-javascript) has multiplication. What about addition / subtraction / division?