The MonteCarloTest (single-threaded) tests random functions. It encodes and decodes one call (with randomly generated matching arguments) per function. When testing 100,000 functions on a laptop, the total time spent in the *decodeCall* method averages about 400ms. This gives a function call decode rate of 250,000 calls per second. Performance of *encodeCall()* is similar (~500ms, 200,000/s). What constitutes a random function is defined in MonteCarloTestCase (basically it has a random number of arguments between 0 and 5 (inclusive) with psuedorandomly selected types (each of which, with probability 0.25, can be a 1-dimensional array of a type, with between 0 and 33 elements (inclusive)).