I'm a bloody idiot.
So just like it was indicated, there was a problem loading something from the PCL, but it was such an esoteric error .NET wasn't ready for and just barfed without telling me anything.
To troubleshoot it, I commented out the entire body of the constructor which wound up creating instances of several other classes from the PCL and setting them to member variables. This worked.
Then I began uncommenting bits of the constructor until it failed again. Leading me to one class which failed. Passing it null for all objects its constructor took still caused the TypeLoadException so it therefor had to be one of the parameters. I remove all the parameters and lo, it did work. So then I added the parameters back one at a time until it blew up in my face.
It turns out the root of my problem is that despite compiling fine under windows phone 7 and silverlight 4, the PCL was using features windows phone 7 doesn't actually support. Namely, co- and contra-variant generic interfaces. I've had to refactor my PCL so that it can handle invariant generic types and everything proceeds normally.