I18NMessageBundle: modify builder class

Make it an abstract inner class of I18NMessageBundle. Other people may want to
implement it differently.

Moreover, this will allow to test more efficiently.