compatibility with .NET 3.5

* move appart the compatibility patch
* indentation with tab should be ok
* ThrowException is rewritten because buggy under 3.5 with DynamicMethod