working on using a dynamically compiled assembly with dynamic type implementations of an interface for creating instances.  Don't actually know if it's going to work in all cases - but it might...  Also, it's a lot lot faster than delegates.
Okay dynamic interfaces are most definitely consistently faster.  Now I need to re-do the IRezolveTargetCompiler interface to produce ICompiledRezolveTarget instances, and change the compiler's caching to cache those instead of delegates.  The existing delegate code can re-implement that interface by wrapping the interface via the delegates.

Then I need to produce a list of targets that are to be tested against a particular compiler to ensure that I can check that all compiler implementations are capable of running them.
in process now of implementing the new compiler
Hmmm... clearly a bit of work to do here in the dynamic compilation - anything except a constructor call is forbidden!
this file should have been included
lifted constants
speed is good; singletons work - but the IL in the dynamic assembly is possibly a bit heavy - now need to get dynamic resolve calls to work when using the Assembly compiler.
2 tests fail because container's compiler isn't mocked.  RezolverContainerTests fails on one test because the statically compiled delegate fails also.  This is to be expected, since the test expects the Resolve call to work only when a dynamic container is passed in, and thus there isn't an int that can be statically found.  A Gnarly issue  and one for which I need to find a solution!
made a bunch of tests pass - broke a few others.... doh.
All tests passing
adding a much more complex compiler test
a bit further with the latest mega-test
playing with nullable handling across both compilers.
Adding lifetime containers (or scopes) - a name change is going to be instigated at some point, since a scope is traditionally thought of as being something that owns actual objects rather than recording object registrations.
Slicing the RezolverContainer class implementation a bit more to allow for more complicated
first lifetimescope test passing.
moving from vm to real machine
okay so the disposing of nested scopes doesn't work correctly..  This is currently expected.
rename/refactor away from rezolvercontainer and rezolverscope; making room for scope to be used for the lifetime classes.  Also looking to add operation(s) to IRezolver (as it is now called) to donate compiled targets instead of simply giving up instances.  Using the compiler isn't enough for this, because it doesn't provide any caching hooks.
refatoring names and terminology.  If you see the word 'container' used for an identifier, method or type; or 'scope'' being used outside of lifetime scops, then it's prbably wrong.  key types are now IRezolver, IRezolverBuilder and ILifetimeScopeRezolver