CachedI18NMessageBundle: create a thread pool to run our futures

5 threads is enough, hopefully!
CachedI18NMessageBundle: first version of timeout handling, with tests

Right now, it is hardcoded to 10 seconds. Should be customizable.