Form compiler parameters

Actually use any form compiler parameters when passed in by the user.  Additionally, fix up the assembly caching so it does the right thing in response to changing form compiler parameters (i.e. doesn't produce a spurious cache hit).
Maybe add a test for that too?