Support packages and dynamic translations

And rewrite dependency with an abstract class...