Where is the Mono C# compiler for Unity iPhone?

A bit of background first:

We have existing framework dll's (.NET 2.0) for a range of applications running on both Mono and MS.NET. They work just fine in standard Unity using whatever version of Mono it uses. We would like to leverage those same dll's within a Unity iPhone app, however we receive errors regarding missing classes and interfaces, notably much of the System.ComponentModel namespace.

In an effort to get around this, we tried stubbing the missing classes (as they are not critical for our app, but we don't want to pollute our framework dll code with #ifs everywhere). However attempting to build the framework dlls using VS with these stubbed classes causes a whole range of clashes as obviously VS knows about the real System.ComponentModel classes and complains.

What I decided to try next was to build our framework dll's including the stubbed classes using the Mono compiler that Unity iPhone uses, as it obviously doesn't know about the missing classes and shouldn't hit conflicts.

However I cannot find the mcs tool (Mono C# compiler) anywhere on my system - where is it located, and if it is not included, how does Unity iPhone compile C# scripts itself?

you should find it in MonoCompiler.framework in the Unity bundle.