Java dependency provider - a "no DI" framework