Logging - revise LogMessageCallback

- introduce MessageCallback to separate logic for message methods
(@Message) and logger methods (@LogMessage)
- make both interfaces functional
- fix incorrect callback usage in ValidatorLogger
using method reference to get a simple code
using try resouce
Cache interceptor chains in InterceptionContext
Fix delegate-to-super methods and use them
Shortcut for methods with no interceptors (e.g. with decorators only)
Make logic that generates bytecode for InterceptionDecorationContext calls reusable
Do not call into method handler from methods that are not intercepted (only push to InterceptionDecorationContext)
Make use of RequestScopedCache for removing InterceptionDecorationContext at the end of the request
Reduce the number of times ThreadLocal is accessed on critical path
Fix intermittend failure in unit tests
Minor improvements
Only generate delegate-to-supper methods for intercepted methods
Make sure WeldInvocationContext survives being dispatched to a different thread
Remove duplicated code
Upgrade jboss-classfilewriter to 1.0.5.Final
WELD-1785 Testcase
WELD-1785 It should be possible to destroy a bean from within an interceptor