Making ShouldDecompile virtual

Making ShouldDecompile a virtual instance method, so one can override it
in a custom scenario.

For me it was needed to integrate it into DevExpress XPO Linq processing without using the special attibutes in my data layer project, probably it could be a useful usability improvements for others as well.