BetterThreadLocal - no memory leaks and potentially faster than ThreadLocal (though apparently usually slower)